为什么git会将删除与重命名/复制混淆?

Ove*_*erv 9 git

状态报告目前显示以下内容:

http://gyazo.com/29176f171b2cdd21ba6a929799b45358.png

但是,当我这样做的时候

git rm include/oogl/Buffer.hpp

发生以下情况:

http://gyazo.com/6c33678bbe4afa2e3ec2cf4a382b637f.png

我如何才能删除该文件并将其余文件单独留下?

cdh*_*wie 14

Git的只删除该文件.根据两个文件中相同内容的数量启发式地检测重命名,但此信息不存储在提交中. 当您稍后查找提交时,如果仅基于新文件和已删除文件进行重命名,Git将再次启发式确定.所以不要担心.

(请参阅Git FAQ,部分为什么git没有"跟踪"重命名?,特别是这个文本:"Git有一个重命名命令git mv,但这只是为了方便.效果无法区分删除文件并添加另一个不同的文件名称和内容相同.")

  • 要跟进,@ Martinho/cdhowie:``renit-threshold = <n>`on [`git-merge`](http://www.kernel.org/pub/software/scm/git/docs/git-merge .html)和`-M [<n>]`或`--find-renames [= <n>]`[`git-diff`](http://www.kernel.org/pub/software/ scm/git/docs/git-diff.html)允许您控制重命名检测的相似性阈值... (2认同)