Git搞砸了我的文件后推

Git搞砸了我的文件后推

问题描述:

我敢肯定这是我的错,但推后,目标库中的所有文件都包含它们自己的两个副本。它看起来像:Git搞砸了我的文件后推

<<<<<<< HEAD 

code goes here 

====== 

same code again 

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

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

编辑:我应该提到它对所有1000个(左右)文件都这样做了。大多数这些文件根本没有被编辑,也不是我提交的一部分。它只是这样做的字面上每个文件。我想不出为什么和所有答案到目前为止只是告诉我手动编辑所有1000个文件,这不是一个合理的解决方案。再次推进也没有奏效,没有任何反应。

+0

这不是一个Codeigniter问题......这是一个混帐问题。 – jcorry 2013-04-05 16:31:09

+0

尝试使用您的编辑器在其中一个文件上显示空白;这样你可以检查你是否正确,这是一个换行问题。 (我认为你可能是对的,但验证不会有什么伤害。) – 2013-04-05 16:42:02

+0

其实我只是检查过了,页面空白的结尾在两者上都是一样的。现在我真的不知道发生了什么事。 – Citizen 2013-04-05 16:49:35

据我所知,push不应实际上提交更改时,有合并冲突,直到你解决了,所以你应该能够撤消使用git reset --hard目的地回购这些变化。

为了确保这不会再发生了,看看这个页面:https://help.github.com/articles/dealing-with-line-endings

希望帮助!

它只是显示你的冲突。最重要的是你的头版本,在=====下面最有可能是你推送的内容。我猜你添加了评论的代码或者有一些其他的细微差别。删除其中一组代码(你不想要的那一组),你很好。

+0

除了字面上每个文件发生这种情况。最大的问题是,当我尝试进行另一次合并时,它没有被纠正。 – Citizen 2013-04-05 16:31:01

+0

你在使用Linux/Windows的混合吗? ====== – Leeish 2013-04-05 16:37:26

+0

两边必须有区别是的,我们使用的是Linux和Windows的混合体。我认为这与自动添加换行符有关,但没有任何提示。再次推进什么也不做。 – Citizen 2013-04-05 16:40:15

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

<<<<<<< HEAD 

====== 

编辑后做再提交。

+0

这发生在一千个文件中。我不确定为什么git不能进行合并。就像我说的我认为唯一的问题是我的Windows机器没有添加换行符。 – Citizen 2013-04-05 16:28:59