git mv不会删除旧文件

时间:2010-10-11 07:06:44

标签: git github

我跑了这个:

 $ git mv README README.md

然后:

 $ git commit -m "renamed" README.md
 $ git push origin master

但是在github上,旧的README文件仍然存在于存储库中。 为什么?

1 个答案:

答案 0 :(得分:5)

因为你从未真正提交移动的删除部分。

http://www.kernel.org/pub/software/scm/git/docs/git-commit.html

  

可以通过多种方式指定要添加的内容:

     

...

     

3)通过将文件列为commit命令的参数,在这种情况下,提交将忽略索引中暂存的更改,而是记录列出的文件的当前内容(git必须已知);

请注意这里的关键位:将忽略索引中暂存的更改。 git mv分阶段删除旧文件和创建新文件,但不提交它们。当您调用git commit README.md时,它会提交文件的新名称版本,但会忽略旧文件的暂存删除。

请尝试此序列:

$ git mv README README.md
$ git commit -m "renamed"
$ git push origin master