Git 合并在我的文件中留下了 HEAD 标记

2024-01-02

我尝试使用 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 分支中所做的更改合并到 master 分支中?


那些是冲突标记 https://stackoverflow.com/questions/7901864/git-conflict-markers。您仍在合并过程中,但有一些部分 Git 无法自动合并。你会需要手动编辑这些部分 http://schacon.github.com/git/user-manual.html#resolving-a-merge达到您想要的效果,然后提交结果。


例如,在您的特定情况下,您可能希望像这样解决它(注意 - 右侧的箭头/文本只是我的注释,而不是您在文件中输入的内容):

integer = 
<<<<<<< HEAD                                  <-+ remove the bits here
    digits:[0-9]+                               |
        { return digits.join(""); }             |
=======                                       <-+
    sign:"-"* digits:[0-9]+
        { return sign + digits.join(""); }
>>>>>>> gh-pages                              <-- and this

因此您可以将文件另存为...

integer = 
    sign:"-"* digits:[0-9]+
        { return sign + digits.join(""); }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Git 合并在我的文件中留下了 HEAD 标记 的相关文章

随机推荐