Merging repositories

Ask general questions here.
axcha15
Certified Professional
Certified Professional
Posts: 4
Joined: Tue Sep 02, 2014 9:56 pm

Merging repositories

Post by axcha15 » Fri Nov 07, 2014 6:02 pm

I have been trying to find a similar topic but I couldn't, we are using git as our version control system, however we are having issues when we need to merge our elements repository(*.rxrep), there are many collisions and it is taking a while to fix them, I'm wondering if you have a solution for this, a recommended tool, or a good practice in order to avoid this kind of issues.

Thanks in advance.

krstcs
Ranorex Guru
Posts: 2683
Joined: Tue Feb 07, 2012 4:14 pm
Location: Austin, Texas, USA

Re: Merging repositories

Post by krstcs » Fri Nov 07, 2014 6:58 pm

From my experience: Don't let everyone use the same repository. Instead have everyone make their own repository by appending their initials (or employee number or something) to the end of their repo file. All of the test modules they CREATE need to use their repository. The modules will keep track of which repo they are using, so even if you have to edit someone else's work it won't be a problem.

There will be duplication, but that can be managed better than trying to fix a problematic Git merge.

Also, if you need to merge things later, you at least have the original to fall back on or to use as a reference while working.

Git does not play well with Ranorex due to Ranorex using GUIDs to identify structures in the background. Git will see the GUID LINEs as changes and try to either merge them or overwrite, which will completely mess up Ranorex. But if everyone has their own repo there shouldn't be a problem.

Come up with some good standards for how to structure the repo as this will help with finding things in the other repositories. For example, try to always use rooted folders for each level of the xpath. Makes the path longer, but it is actually easier to manage in the long-run. Also, try to make sure everyone is using unique id attributes to identify elements.

I'm fortunate that there are only 2-3 of us working on a project at any given time, so I manage all of it. If you have a large group, make everyone use their own repository.
Shortcuts usually aren't...