Mel*_*lon 5 git git-commit git-branch
我是Git的新手.目前,我遇到了这种情况:
步骤0.我工作的一个子分枝
步骤1.我已经在我的子分支上添加了&提交了file1,file2,file3 ,分别提交了消息msg1,msg2,msg3.
第2步.我checkout master切换到主分支
步骤3.我pull origin master用最新的原始版本代码更新master分支
步骤4.我merge sub-branch将我的工作代码合并到当前的主分支代码
然后,我在file2中遇到了冲突,
然后,我手动解决了冲突.现在,需要添加file2,因为此文件有更改.
步骤5.我add file2在master分支中,因为我已经解决了这个文件的冲突
步骤6.我现在应该写什么提交消息?在MSG2只?或msg1,msg2,msg3现在都需要重写?(我不想丢失我工作的文件的提交消息msg1,msg2,msg3)
您没有为那些合并的提交编写新的提交消息; 您正在为合并提交本身编写提交消息.你的历史将如下所示:
- x - o - o - o (origin/master) - X (master)
\ /
1 - 2 - 3 (sub-branch) ------
Run Code Online (Sandbox Code Playgroud)
您正在撰写的提交消息是为了X.提交1,2以及3是祖先,仍然在历史上,他们仍然有自己提交信息.没有办法改变那些合并.
X如果没有冲突,提交消息将默认为类似的Merge branch 'sub-branch'.如果确实存在冲突,它仍然会将其作为第一行,但也会出现冲突的文件列表:
Merge branch 'sub-branch'
Conflicts:
file2
Run Code Online (Sandbox Code Playgroud)
这是一个温和的提示,你做的事情比简单的合并更重要 - 你必须做一些手工工作来解决冲突file2.如果您愿意,可以添加一个快速说明,说明导致这些冲突的原因以及解决方法.否则,只需按原样使用该消息!请记住,这只是合并(和冲突解决)的描述.您合并的提交有自己的提交消息.