推后,Git搞砸了我的文件

时间:2013-04-05 16:24:32

标签: git tortoisegit

我确定这是我的错,但推送后,我目的地存储库中的所有文件都包含两个自己的副本。它看起来像:

<<<<<<< HEAD

code goes here

======

same code again

/* End of file config.php */
/* Location: ./application/config/config.php */
>>>>>>> 6962176130afe295144f1f6a27146da27b604762

这是网站上的每个文件。尝试另一次推动并不能解决问题。我认为有一个问题,我的所有文件都有差异,因为我的Windows机器没有在最后添加新行或其他东西。我该如何解决这个问题?

编辑:我应该提到它对所有1000个(左右)文件都这样做了。大多数这些文件根本没有编辑,也不属于我的提交。它只对每个文件执行此操作。我想不出为什么到目前为止所有答案只是告诉我手动编辑所有1000个文件,这不是一个合理的解决方案。做另一次推动也没有用,没有任何反应。

3 个答案:

答案 0 :(得分:4)

据我所知,push在发生合并冲突时,实际上不应提交您的更改,直到您解决它们为止,因此您应该能够在目标上撤消这些更改使用git reset --hard进行回购。

要确保不再发生这种情况,请查看此页面:https://help.github.com/articles/dealing-with-line-endings

希望有所帮助!

答案 1 :(得分:1)

这是冲突merge的结果。单独的Git无法合并文件,因此请在文件中留下差异供您编辑。您应该在编辑器中打开文件,并在

中保留所需的部分
<<<<<<< HEAD

======

编辑完成后再次提交。

答案 2 :(得分:0)

这只是向你展示冲突。最上面一个是你的头部版本,而在=====之下最有可能是你所推动的。我猜你添加了注释代码或者还有其他一些细微差别。删除其中一组代码(你不想要的代码),你很好。