我最近看到一些很奇怪的东西。假设我有三个分支。他们都有一个名为 A 的文件。A 然后在三个分支中独立地重命名为 B。然后将三个分支合并为一个。如果现在我使用
git log --follow B
我想我应该看到关于重命名的三个提交
diff --git a/A b/B
similarity index 85%
rename from A
rename to B
index b328642..5cd437a 100644
--- a/A
+++ b/B
但我实际上看到的是关于从 A 重命名为 B 的提交,其他两个正在删除 A
diff --git B B
deleted file mode 100644
index 5db3424..0000000
--- a/B
+++ /dev/null
在我看来, --follow 忽略了分支。它只是线性地跟踪日志,而不是对不同的分支进行不同的处理。
这里会发生什么?有什么办法可以避免这个问题吗?
谢谢