Back to Blog
Fixing merge conflicts in p4merge5/26/2023 ![]() ![]() This helps find those integration issues caused by behavioral changes. Run the functional and integration tests: well, you do not really want to run all functional tests as that may take a while but you could run those that cover the bits your changes may have impacted.What looks like an innocent change may be a regression for other bits of a class/unit/module. This helps you find those pesky little issues caused by semantic conflicts. Run all the unit tests: and make sure they all (and not just yours) pass.Build the solution: so you know that the latest code will build with your code integrated at least on your machine.Get the latest from source control: making sure changes made by your teammates are integrated into your local copy of the code. ![]() The Check-In dance we are doing goes like this: Check-In DanceĬheck-In dance is a few steps a developer should perform before every check-in which help reduce the risk of merge issues to a great extent. This is not something I have come up with and a lot of Agile teams have been doing this for years but I thought I would share my thoughts. There is no easy solution for this problem (particularly if you are using a non DVCS solution) and this is going to happen to you no matter how good a developer you are but here I am going to talk about a process I introduced in my team that helped mitigate the problem. This basically means that the code would build and work on his machine and nowhere else. Later we had some other issues where a developer had checked in his new files but the project file he had checked in did not reference those files again due to a merge issue. A quick history search showed that there was a merge conflict on the test project file and one of the developers had not merged properly. I talked to other devs and none of them knew how they went missing. On my current project I noticed that two of the test classes I had checked into source control were not there a few days later. Merge issues could get quite serious and ugly. When working in a team it is very easy to get into merge hell where your changes do not easily/nicely integrate with those made by your teammates. ![]()
0 Comments
Read More
Leave a Reply. |