Fri Nov 26, 2021 11:54 pm
Login Register Lost Password? Contact Us


Version Control in non-legacy systems

Topics specific to the use of the ECL IDE

Mon Feb 03, 2014 4:11 pm Change Time Zone

Currently, you can configure ECL IDE to use a Repository or a hierarchical file system. When you use a Repository, you get a version control system that allows you to check out, check in, and view history.

If you use the hierarchical file system, those features disappear. It is true that you can enable Subversion or some other version control system in this mode. However, you then have to do your version control outside of the ECL IDE. At first glance, this seems like no big deal. In Windows, you can install Subversion and then if you view the folder hierarchy with Windows Explorer and get all the usual check in, check out, history, comparison, branching, etc.

I explained this to my customer and was told that their people would be unlikely to want to deal with version control in this manner. Now that I think about it, here is why:

In the Repository mode, I have a Sandbox which is very well understood, which is that when other users check things in, they are automatically visible to me. I can edit a file to my heart's content and it will only be visible to me in my sandbox. As soon as I check it in, it becomes visible to everyone else. Furthermore, the Control-S key or Save menu function doesn't merely overwrite the existing file in Repository mode but keeps an instant backup of each time you save, making it more comfortable to edit, save, syntax check, and test without worrying that you may have accidentally trashed some work with no hope of getting it back.

In non-repository mode, this whole mindset has to change. You can't merely Control-S or Save but you have to flip over to Explorer to find the file(s) you just edited and check them into your branch, every time you save. You have to explicitly update your sandbox from the appropriate branch to use everyone else's latest and greatest.

So, what exactly is so hard about either providing the Repository-style capability in hierarchical mode or providing hooks for your favorite version control system, like most other respectable IDE's? I've heard some say that we should just switch over to Eclipse and do our ECL development there but again, ECL IDE is already a very nice system to use for ECL development because it is tailored precisely to our needs.
BenJones
 
Posts: 28
Joined: Tue Jun 18, 2013 2:56 pm

Mon Feb 03, 2014 4:47 pm Change Time Zone

This is one of the reasons why we are providing the ECL Plugin for Eclipse...
gsmith
 
Posts: 290
Joined: Thu May 12, 2011 9:40 am

Mon Feb 17, 2014 5:45 pm Change Time Zone

I've been experimenting with Eclipse. You seriously need to update the manual for setting it up. It shows you how to do Hello World but leaves it as an exercise for the reader how to do other important things such as bringing in an existing repository and setting up version control. These steps are fairly straightforward when you know what you are doing but are a nightmare if you don't.

So here is the trick for getting an existing repository into Eclipse:

  • Create a project.
  • Note which folder that project creates.
  • Copy your existing repository folders into that project folder.
  • Refresh the ECL Development windows. The folders you just copied in which magically appear and be available for import, at least within the same project.

One thing I have noticed is that if you are trying out the Virtual Machine and Eclipse at the same time is that Eclipse and its "Run Configuration" window in particular run extremely sluggishly when the Virtual Machine is running on the same computer, whereas the ECL IDE is much more responsive. I suspect the reason for that is Eclipse is built with Java and ECL IDE was probably written in C/C++ and therefore runs much more efficiently.
BenJones
 
Posts: 28
Joined: Tue Jun 18, 2013 2:56 pm


Return to ECL IDE

Who is online

Users browsing this forum: No registered users and 1 guest

cron