RE: Merge conflict when lines next to each other are changed
From: <hidden>
Date: 2021-12-01 14:10:15
On December 1, 2021 8:34 AM, Loic Fouray wrote:
quoted
Le 1 déc. 2021 à 13:19, rsbecker@nexbridge.com a écrit : On December 1, 2021 4:30 AM, Loic Fouray wrote:quoted
In a file, I have this 2 lines one below the other: Repository: myvalue Tag: 8.2.10 On my local branch i have updated repository myvalue. On the upstream repo, they updated often the tag value (not updated of my side). When i perform a merge from upstream to local branch, i have a conflit. It seems that it’s related to neighboring lines. Could you confirm that it ‘s a normal git operation? Also, i need to automate this merge. Is It possible with git tools to avoid this conflict or to resolve this conflict automatically?I try to keep version-specific identifying information, which is alreadycontained in git, out of my code. This includes change logs/history in each source file because git is good at keeping that information - it is redundant in the code. However, for organizations that need to do that, I suggest using clean/smudge filters so that the code inside the repository is clean, while things like the repo name and tag get injected into the code as git puts it into the working directory. The code is then cleaned up while being staged. This removes the possibility of the conflict on these lines by removing the differing lines. You can script this using a combination of sed and git commands. My own git front end does this all the time but it is not generally applicable to all platforms (only NonStop and MVS) so I have not contributed it. If i understand correctly, you use externals tools (sed ..) but there is no possibility to manage It directly by git (spécific options,merge strategy..) , that’s right?
I avoid the merge problem by removing the lines that will cause conflicts from the source. You can use -Xtheirs to always choose the upstream, but I do not think that is going to give you the desired result in all cases. My suggestion is to avoid the problem. Yes, using an external tool for your clean/smudge filters is the suggestion if you must have the specific conflicting lines in your code. -Randall