当我开始拆分我的类时,我修改了一些文件名,但现在我收到了冲突错误。我该如何解决这个问题?
CONFLICT (rename/rename): Rename "Ruby_game.rb"->"game.rb" in branch "HEAD" rename "Ruby_game.rb"->"ruby_game.rb" in "bb755b75896b09a2113c4a6b2a5a60dcf7d3ea2a" Automatic merge failed; fix conflicts and then commit the result.
更新:我从操作系统上的目录中删除了ruby_game.rb
文件,然后将其从Ruby_game.rb
下的Sublime Text重新保存到目录中,然后执行了{{ 1}}。现在它不会因为“未合并的文件”而让我提交。
我已阅读其他相关帖子,但我处于如此基本的水平,任何微小的差异都会让我失望。请注意,这是我在这里的第一篇文章,我只是想了解格式和协议,所以如果我没有遵循最佳实践,请正确地以正确的方式推动我。
答案 0 :(得分:1)
当Git说Automatic merge failed; fix conflicts and then commit the result.
时,它意味着它占用了文件的两个版本的内容,将冲突放在文件中,并希望您浏览该文件并使其保持清洁。 / p>
我通常手工做。如果你在Sublime Text中打开文件,你(希望)会看到一个或多个这样的部分:
<<<<<<< HEAD
(some lines of content)
=======
(other lines of content)
>>>>>>> master
在最简单的(大多数手动)中,您需要编辑<<<<<<<
和>>>>>>>
之间的内容才能正确 - 有时只是删除其中一个,有时合并代码 - 删除{{1} }和<<<<<<<
行,保存文件,重新添加(>>>>>>>
)然后提交。
我hear键入git add myfile
可能会为您提供更加性感的方式来执行此合并。既然您使用的是OS X(对吗?),它可能会为您提供用户友好的功能。
然而,如果失败了,我认为将起作用的是:
git mergetool
Ruby_game.rb
,然后键入git reset HEAD Ruby_game.rb
以放弃您所做的任何本地更改。
git checkout -f Ruby_game.rb
git mv -f Ruby_game.rb ruby_game.rb
命令不仅用于移动文件,还用于重命名文件。 (在操作系统级别,重命名和移动实际上是相同的。) mv
答案 1 :(得分:0)
之前有人将该文件重命名为game.rb,现在您想将其命名为ruby_game.rb,因此存在合并冲突,请仔细检查该文件是否是您想要的名称并再次提交。那就是它。