I'm using Flyway to keep track of database changes, and git for version control.
Flyway depends on migration scripts, which are named with increasing numbers for each migration.
Now I have the following situation: two features were developed on two separate branches (let's call them A and B), both requiring database changes. Both developers created a migration script for the database for their branch. As they branched off master at around the same time, they both assigned the same filename to the migration script: V42__migration.sql
.
Now branch A was merged into master. When merging branch B, I got into a merge conflict because of the V42__migration.sql
file. The correct solution to solve this conflict would be to rename the migration script of the branch B to V43__migration.sql
. However, at time of merging git tries to merge both files in to one, where I actually need both of them untouched, but one renamed.
What's the best way to solve this kind of merge conflicts with git?