在git中撤消重命名的正确方法是什么,例如:
git mv file1 file2
答案 0 :(得分:187)
非厚颜无耻的回答:
git mv file2 file1
答案 1 :(得分:34)
如果自上次提交以来没有进行任何其他更改(您希望保留),则可以执行
git reset --hard
答案 2 :(得分:8)
这取决于你想要完成什么。如果您希望它看起来好像文件从未被移动过,那么您可以在移动之前重置(或重新绑定)。如果你不关心历史,那就把它移回去。
答案 3 :(得分:8)
在我的情况下,我移动了整个文件夹,然后意识到我不应该。
我真的很喜欢@Dave Konopka的答案,但是我没有用这种方法取得太大的成功(也许是我的GIT版本(1.8.4)?我的文件仍然显示为已删除。我对其进行了其他更改堆栈我不想失去(不幸的是)。
我确实做到了这一点:
git reset moved_folder
git checkout original_folder
答案 4 :(得分:6)
如果您意外重命名了大量文件并希望返回到您开始的位置,请删除adds
来电下显示为git status
的所有重命名文件。< / p>
删除所有已更改的文件后,您可以运行git checkout -- *
以在本地恢复原始文件名。
答案 5 :(得分:6)
git reset HEAD file2
为我做了伎俩
答案 6 :(得分:2)
git reset HEAD file2
git checkout -- file1
rm file2
第一个命令unstages file2但是留下了它的副本。第二个命令恢复原始文件,第三个命令删除新文件。
答案 7 :(得分:0)
我使用的技巧是做一个git stash来撤消我的所有更改(包括恢复mv&#39; d文件),然后用git stash drop删除存储。
答案 8 :(得分:0)
少怕惊的是去回购的顶层并做:
git reset
git checkout。