Forum Discussion

NogaS's avatar
NogaS
New Contributor
4 years ago

GIT Integration - Non-mandatory properties causing conflicts, even when no change made

Hi,

 

My team is struggling with GIT conflicts. I can see similar issues already discussed, but none helped to the specific issue we are facing.

 

Some background:

 - Gitkraken is the tool we use to handle files. 

 - Each team member creates a feature, works on it, and then merges it to develop.

 - We believe this issue to start on version 3.1

 

Issue description:

 - When saving the project, test cases with non-mandatory parameters (empty value) creates conflicts. This is though no change was made. This doesn't happen for every field but is very common. One of our projects shows more than 600 (!) conflicts on each save - all for this reason.

 

Example:

 - A test case has several parameters, one of them is "firstName", and it has an empty value as this is non-mandatory :

 

 <con:parameters>
<con:entry key="lastName" value="zasvbnmasdFGHjklqwertyuiop123456789qazxswedcvfrtgbX"/>
<con:entry key="firstName" value=""/>
<con:entry key="agentCode" value="${#Project#AgentCodeKiosk}"/>
<con:entry key="version" value="${#Project#version}"/>
<con:entry key="email" value="player@email.com"/>
<con:entry key="playerId" value="Player000001"/>
</con:parameters>

After execution of any test case (not necessarily this one - just any test of the project) and hitting "Save", this parameter no longer shows:

 

  <con:parameters>
<con:entry key="lastName" value="zasvbnmasdFGHjklqwertyuiop123456789qazxswedcvfrtgbX"/>
<con:entry key="agentCode" value="${#Project#AgentCodeKiosk}"/> //where is the firstName parameter?
<con:entry key="version" value="${#Project#version}"/>
<con:entry key="email" value="player@email.com"/>
<con:entry key="playerId" value="Player000001"/>
</con:parameters>

 

As there is a change to the XML, Gitkraken shows a conflict. But there wasn't any. This is how this conflict looks in Gitkraken:

 

 

What did we try:

 -  Enabled pretty print and normalized line-breaks settings.

- GitIgnore was considered, but it is not a solution - as we do want to be alert of other changes, if done, on those files.

 - We have read similar issues and looked into their comments - unfortunately, it didn't help:

 -  Contacted the Smartbear support team, which investigated and suggested it is a known issue but there is no fix for it yet, nor a timeline for one to be offered.

 

I'm wondering if other teams encounter this as well? Maybe with other systems than Gitkraken? Or maybe you even found a way to work around this?

 

Thank you!

 

  • TNeuschwanger's avatar
    TNeuschwanger
    Champion Level 1

    Hello NogaS.  I don't have an answer for you but maybe something to consider as a work around...  I notice the use of project properties for some of the fields.  Could you have a project property (or suite, or testcase property) defined for that field that is empty.  At least saving would not remove it since there would be content there henceforth.

     

    Your question piqued my curiosity on the GIT topic because the team i am on is just embarking on composite projects workflow in GIT with multiple people working on a project.