为什么git将此delete + new视为重命名?

时间:2014-06-11 12:47:04

标签: git

我对旧文件进行了一些重构和git rm,对新文件进行了git add。它显示为从旧文件重命名为我的一个新文件:

renamed:    src/P/Foo/PicturePosition.php -> src/P/Model/Block/Drawing/OffsettedPosition.php

即使我从未做过git mv,但文件也有不同的内容。为什么这发生在我身上?我是否应该尝试修复它,如果是,那该怎么办?

我使用git 1.9.1

1 个答案:

答案 0 :(得分:0)

Git没有记录重命名。它只存储源树,并从差异中推断添加,删除,复制,重命名和/或编辑文件。

git mv只是git rmmv,然后是git add的语法糖,可能会让Subversion用户感到更快乐。无需使用git mv通知git您已重命名文件。

我的典型工作流程是从shell和编辑器中操作文件,然后执行git add -Av告诉git自己弄清楚我刚刚做了哪些更改。我不认为我曾经使用git mv