Git合并我文件中的左头标记我试图使用Git合并命令行中的一个文件,这时出现了一条错误消息,告诉我合并被中止。我以为这就结束了,但后来我意识到我的文件里有手印。就像这样: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)更改代码行一串相等的符号(=======)新版本的代码以大于符号和分支的名称开头的另一行(>>>>>>> gh-pages)更糟糕的是,文件内容不再有序。有谁知道我如何使这些文件恢复正常,以及我在gh分支中所做的更改合并到主分支中吗?
3 回答
慕容森
TA贡献1853条经验 获得超18个赞
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(""); }
暮色呼如
TA贡献1853条经验 获得超9个赞
git mergetool
git checkout --ours -- /path/to/conflicted-file # this is probably the one you want git checkout --theirs -- /path/to/conflicted-file
git reset --hard # sounds like --hard is what you need but check other options
紫衣仙女
TA贡献1839条经验 获得超15个赞
示例脚本:
# vim /usr/sbin/solve.git
#!/bin/bash for f in $(grep -Rl '^>>>>>>> ' --include="*.php" --include="*.css" --include="*.js" --include="*.html" --include="*.svg" --include="*.txt" .) do sed -i -e '/^=======/,/^>>>>>>> /d' -e '/^<<<<<<< /d' $f sed -i -e '/^>>>>>>> /d' $f echo "$f Fixed" done git add . ; git commit -am "[+] Resolved on `date` from `hostname` by `whoami`" --no-verify
# chmod 755 /usr/sbin/solve.git
$ cd <path_to_repo>
$ solve.git
- 3 回答
- 0 关注
- 660 浏览
添加回答
举报
0/150
提交
取消