I don’t know if this feature is already available or being plannend but I would find it very useful to have an integration with Git and GitHub to version easyMorph files. The aim would be to see al the changes within the project not just to version the files as such (as this can be achieved with a git repo outside easyMorph).
Are there plans to release such feature in the near future ?
EasyMorph project files are designed in a way to be compatible with version control systems, which means you can produce diffs using standard means of the systems. Although, no plans for deep integration with with VCSs in the near future.
For more complex ETL-processes, version control seems a necessary tool. As easyMorph is oriented to non-technical business users, I suppose version control via a user-friendly GUI should become an import component of future easyMorph versions.
Could you give some more advise on best practices for using the current EasyMorph version in a production environment to better deal with changes in ETL-flows ? Rolling back to earlier ETL-flows and comparing changes seems very important in that context.
Is there a webpage with the long term road map for EasyMorph ?
I would second this suggestion. I am the main technical person in my company and have been trying to find a way to make sure that there is a plan B for any time when I am no longer around.
The documentation generated within EasyMorph definitely goes a long way to helping with this goal.
EasyMorph project files are designed in a way to be compatible with version control systems, which means you can produce diffs using standard means of the systems. Although, no plans for deep integration with with VCSs in the near future.
Do you mean that if we were using GitHub for example, we would just paste a new version of the code and GitHub would pick up any changes?
It would be interesting to know whether it is feasible to for example use Google Drive as a file saving location and then link that to GitHub via Zapier as a means to automate updating of the repository?
Keep folder hierarchy the same in development and production environments. User relative paths to source files and subprojects where possible.
To keep track of changes, you can deploy projects into production through git, not by copying files:
Commit and push project(s) to git in the development environment.
In the production environment run git pull to roll out recently committed changes.
When using EasyMorph Server, pushing/pulling commits on dev/prod servers can be done by creating a task with the "Run program" action. In this case publishing can be done by a single click.
Make sure you don't commit data files to git, only projects and reference data (lists, etc.).
Not sure I understand your question. Morph projects are just XML files. You can see differences in projects by viewing git commits in GitHub -- the changes in .morph files would be sufficiently human-readable to understand.
That sounds a bit like over-complication to me. You can just commit changes to local git repository and then push it to GitHub by means of git only. In the production environment, you can pull the changes from GitHub again by means of git. See my previous reply with some practical advise on it.
Recently I had a discussion on using git for versioning our EasyMorph projects.
I beleive our business users will not be able to maintain and commit changes on the EasyMorph projects they maintain using standard git tools.
We strongly beleive that such versioning should be integrated in EasyMorph desktop and that interaction of the users with the complexities of git should be minimized. This should also simplify our own setup.
Could an integration with git and github (or other such as gitlab) be set on the roadmap for EasyMorph?
Currently I am using git to version my EM-projects.
I work with 2 branches: master and development. I am not a git pro so I think I am not working the most optimal way.
What I fear is that when I receive two concurrent questions that could impact in the same actions in the same flow I could run into conflicts. Say if I create two feature branches: one for each request.
Since we are not dealing with code, it could be difficult when I merge the two branches back in the master branch ?
Any suggestions how I could modify my workflow so that I do not run into such problems ?
I would very appreciate when someone could post some tutorial about version control and easyMorph.
This could also be not with git but with the new submodules features in 4.0 for which you say that it can also serve as a version control tool ?