2013-10-28 213 views
0

我是git的新手。很多我们的模板都有这个:“<<<<<<< HEAD”模板

<<<<<<< HEAD 
      $data = unserialize($ustate["data"]); 
======= 
      $data = unserialize($ustate["data"]); 
>>>>>>> 8a9dd1a09a60f2d508c8cbff60a2601a2d5beef0 

但是没有改变提交。当我做git状态时,它只是干净的,没有任何提交,合并,拉,推。我怎样才能删除这些模板?

在此先感谢。

+6

有人没有合适地进行合并。您需要手动删除它们。检查'git blame'来找到破坏它的合并提交。 – SLaks

+0

是的,找到这个人合并,并重复他们的头部。在您进行手动合并之前,先进行构建和测试是一种很好的做法。 – James

+0

FWIW,冲突可能是由于空白的变化造成的,当查看差异时这不一定是明显的。其他人都是对的,有人没有正确解决它,并保留了冲突标记。 :-( – jszakmeister

回答

0

这些工件是在合并中存在冲突时添加的标签,并在合并时显示一个版本与另一个版本之间的差异。

现在,他们已经被推你必须解决它们手动我觉得,虽然你可以尝试做一个git mergetool <path to file>

这表明HEAD有一个版本,并承诺8a9dd1a09a60f2d508c8cbff60a2601a2d5beef0有一些其他版本。然而,他们似乎是相同的,所以你可能想检查你的线路结局如何处理

+0

谢谢,我明白了。有什么办法可以一次解决,我们有50个文件,我不想手动执行(TT) –

+0

如果您确定文件中留下的所有冲突标记都是重复的,你可以使用这样一个简单的shell脚本: – ChrAfonso

+0

http://pastebin.com/0SqbPca6 并运行它与 文件在* .myextension;做./scriptfile.sh $文件;完成 – ChrAfonso

0

是的,我也得到了那些。我不记得,但似乎github应用程序的新更新有一个默认设置,可以解决这些问题:工具>选项>使用rebase进行拉取。如果这样,取消选中它。然后尝试刷新它。最终为我解决了这个问题。

ps,我怀疑“有人搞乱了合并”,因为他们说。我是与我的存储库合作的唯一人员。我认为这是某种错误。 (好吧,我猜它已经搞砸了,但这可能是应用程序的错误。如果你不使用应用程序,只需忽略这篇文章。)