合并冲突
本课属于 Coddy Terminal 学习旅程的“版本控制”单元。第 37 课,共 58 课。
如果两个分支都修改了同一个文件的相同行,Git 无法猜出该保留哪个版本。它会暂停合并,并让你做出决定。
发生冲突的文件会显示特殊标记,标出两个版本:
<<<<<<< HEAD
the version on main
=======
the version on feature
>>>>>>> feature你的任务是手动编辑文件:选择一个版本、将它们合并,或编写新内容。然后删除所有冲突标记行(<<<、===、>>>)。
确认文件无误后,将其暂存,并通过另一次提交完成合并:
git add notes.txt
git commit -m "Resolve merge conflict in notes"如果你中途改变主意,可以中止整个操作并返回合并前的状态:
git merge --abort挑战
中等文件夹中有一个 notes.txt,里面有一行 hello。
初始化仓库并提交初始文件。创建分支 alt,将 notes.txt 的内容改为 hi from alt,然后提交。
切换回 main,将 notes.txt 的内容改为 hi from main,然后提交。
尝试将 alt 合并到 main。合并会发生冲突。使用 git merge --abort 中止合并,然后用 cat 打印 notes.txt 的内容,确认文件已恢复为 main 版本。
亲手试试
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
版本控制中的所有课
自己练习: Terminal 在线编辑器