【发布时间】:2012-05-26 07:18:34
【问题描述】:
我尝试使用 Git 在命令行中合并一个文件,但出现一条错误消息,告诉我合并已中止。
我以为这就结束了,但后来我意识到我的文件中有 gitmarks。像这样:
start =
expression
validchar =
[0-9a-zA-Z_?!+\-=@#$%^&*/.]
integer =
<<<<<<< HEAD
digits:[0-9]+
{ return digits.join(""); }
=======
sign:"-"* digits:[0-9]+
{ return sign + digits.join(""); }
>>>>>>> gh-pages
这些文件不是由我编辑的,并显示插入的行:
- 小于号后的 HEAD (
<<<<<<< HEAD) - 更改的代码行数
- 一串等号 (
=======) - 新版代码
- 另一行以大于号和分支名称 (
>>>>>>> gh-pages) 开头
更糟糕的是文件内容不再按顺序排列。有谁知道我如何让这些文件恢复正常,以及我在 gh-branch 中所做的更改合并到 master 分支中吗?
【问题讨论】:
-
如果你真的不想合并任何东西(或者认为没有必要),来到这里,并且对在几十个文件中“手动编辑这些部分”的建议感到害怕,
git merge --abort将我的本地文件夹恢复到以前的状态。git status向我建议。如果您真的想编辑它们,git mergetool(如下面的答案)可能就足够了。
标签: git git-merge merge-conflict-resolution git-merge-conflict