有没有办法可以阻止git自动合并AssemblyInfo.cs(或者解决它检测“哦,它是同样的变化,我可以跳过它”的行为)?如果我在两个分支中以相同的方式增加版本,然后将它们合并,我想将此作为冲突处理。
我从
分支机构开始[assembly: AssemblyVersion("1.1.*")]
然后我创建了两个分支A和B,对项目进行了更改。在两个分支中,我更改了AssemblyVersion
[assembly: AssemblyVersion("1.2.*")]
现在我合并分支A,然后合并分支B.当合并分支B时,git甚至不认为这是冲突,因为两个提交都会进行相同的更改。
示例:
git init Bar
cd Bar
echo '[assembly: AssemblyVersion("1.1.*")]' > AssemblyVersion.cs
git add AssemblyVersion.cs
git commit -m "Initial commit"
git checkout -b branchA master
echo -e "class A\n{\n}" > ClassA.cs
git add ClassA.cs
echo '[assembly: AssemblyVersion("1.2.*")]' > AssemblyVersion.cs
git commit -a -m "Add class A"
git checkout -b branchB master
echo -e "class B\n{\n}" > ClassB.cs
git add ClassB.cs
echo '[assembly: AssemblyVersion("1.2.*")]' > AssemblyVersion.cs
git commit -a -m "Add class B"
git checkout master
git merge --no-ff branchA -m "Merge Branch A"
git checkout master
git merge --no-ff branchB -m "Merge Branch B"
自定义合并过滤器不起作用,因为这只在三向合并上执行。
有解决方法吗?