重命名文件以更改大小写,现在提交时发生冲突

Renamed file to change case, now getting a conflict on commit

我在开始拆分 类 时更改了一些文件的名称,但现在我遇到了冲突错误。我该如何解决?

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.

更新:我从 OS 的目录中删除了 ruby_game.rb 文件,然后我从 Ruby_game.rb 下的 Sublime Text 中重新保存了它进入目录,然后执行 git mv Ruby_game.rb ruby_game.rb。由于 "unmerged files."

现在它不会让我提交

我已经阅读了其他链接 post 但我处于初级水平,任何细微的差异都会让我失望。请注意,这是我第一次 post 在这里,我只是对格式和协议有所了解,所以如果我没有遵循最佳实践,请体贴地以正确的方式推动我。

之前有人将该文件重命名为 game.rb,现在您想将其命名为 ruby​​_game.rb,因此存在合并冲突,请仔细检查该文件是否是您想要的名称,然后再次提交。就是这样。

当Git说Automatic merge failed; fix conflicts and then commit the result.时,这意味着它获取了文件的两个版本的内容,将冲突的内容放在文件中并排放置,并希望您检查该文件并使其干净。

我通常用手做这个。如果您在 Sublime Text 中打开文件,您将(希望)看到一个或多个这样的部分:

<<<<<<< HEAD
(some lines of content)
=======
(other lines of content)
>>>>>>> master

最简单的(最手动的)你需要编辑 <<<<<<<>>>>>>> 之间的东西是正确的——有时只删除其中一个,有时合并代码——删除 <<<<<<<>>>>>>> 行,保存文件,重新添加它 (git add myfile) 然后提交。

hear 输入 git mergetool 可能会给你一个更性感的方式来执行这个合并。由于您在 OS X(对吗?)它可能会给您一些用户友好的东西。

然而,如果失败了,我 认为 可行的是:

  1. 将您的文件(在 OS 或终端中)重命名回原来的名称,Ruby_game.rb
  2. 键入 git reset HEAD Ruby_game.rb,然后键入 git checkout -f Ruby_game.rb 以放弃您所做的任何本地更改。
  3. 运行 git mv -f Ruby_game.rb ruby_game.rb
    • git-mv 的文档。
    • mv命令不仅可以移动文件,还可以重命名文件。 (重命名和移动实际上是一回事,在 OS 级别。)
  4. 现在git commit -m "Renaming file"