你能帮助我理解这个行为吗:
在develop分支上,我有一个文件,其中包含两个提交:
BOCZA2@PC45819 MINGW64 /c/nttcloud/gitlab/coba/ZAA (develop)
$ git log --oneline -- coba.zaa.model/coba.zaa.model.config/src/main/java/com/zaa/model/config/Channel.java
8509cdf Added route generator based on freemarker template
1e890b7 Added XML configuration for test objects in StaticDataInitializer
然后我可以切换到我的功能分支:
BOCZA2@PC45819 MINGW64 /c/nttcloud/gitlab/coba/ZAA (develop)
$ git checkout feature/ZAA_tools_xmlgenerator
Switched to branch 'feature/ZAA_tools_xmlgenerator'
Your branch is up-to-date with 'origin/feature/ZAA_tools_xmlgenerator'.
同时检查一下我是否对该文件提交过更改:
BOCZA2@PC45819 MINGW64 /c/nttcloud/gitlab/coba/ZAA (feature/ZAA_tools_xmlgenerator)
$ git log --oneline -- coba.zaa.model/coba.zaa.model.config/src/main/java/com/zaa/model/config/Channel.java
该文件在当前工作目录中也不存在:
BOCZA2@PC45819 MINGW64 /c/nttcloud/gitlab/coba/ZAA (feature/ZAA_tools_xmlgenerator)
$ cat coba.zaa.model/coba.zaa.model.config/src/main/java/com/zaa/model/config/Channel.java
cat: coba.zaa.model/coba.zaa.model.config/src/main/java/com/zaa/model/config/Channel.java: No such file or directory
但是,当我尝试将develop分支合并到我的功能分支时:
BOCZA2@PC45819 MINGW64 /c/nttcloud/gitlab/coba/ZAA (feature/ZAA_tools_xmlgenerator)
$ git merge develop
[...]
Auto-merging coba.zaa.model/coba.zaa.model.config/src/main/java/com/zaa/model/config/Channel.java
CONFLICT (content): Merge conflict in coba.zaa.model/coba.zaa.model.config/src/main/java/com/zaa/model/config/Channel.java
[...]
Automatic merge failed; fix conflicts and then commit the result.
我遇到了合并冲突(两个文件都被修改)。
BOCZA2@PC45819 MINGW64 /c/nttcloud/gitlab/coba/ZAA (feature/ZAA_tools_xmlgenerator|MERGING)
$ git status -s coba.zaa.model/coba.zaa.model.config/src/main/java/com/zaa/model/config/Channel.java
UU coba.zaa.model/coba.zaa.model.config/src/main/java/com/zaa/model/config/Channel.java
问题是什么?该文件在特性分支中不存在!合并冲突的原因是什么?我的代码库有问题吗?我如何找出原因?
git merge develop
之后立即运行git diff
命令,文件冲突提示了什么? - Kent Shikama