命名为旧的重命名分支的新分支是否继承其提交?

时间:2018-03-07 17:51:17

标签: git github branching-and-merging

几天前,我将these steps中名为emcee的分支(my repo}重命名为emcee_old。然后,我创建了一个具有相同名称(emcee)的新分支,但是从develop分支中的不同点开始分支。以下是Github如何展示这一过程:

enter image description here

现在的问题是,如果我检查 new emcee分支中的文件,它会包含在中对该文件进行的提交emcee。例如,新分支中的.gitignore文件显示2017年在旧分支中提交的提交:

enter image description here

即使更奇怪的是,如果我访问该文件的历史记录(在新分支中)提交不存在

enter image description here

为什么要在这里?

1 个答案:

答案 0 :(得分:2)

简而言之,Git不会在类似命名的分支之间进行提交。

所以你创建了一个分支,然后重命名它并用同一个名字创建一个新的分支?我已成功地在git v1.8.4.2中完成了这项工作,但没有使用Github。

我怀疑Github的界面存在问题。您可以通过在循环中剪切它并在命令行上本地研究repo的历史来测试它。尝试在终端窗口中运行git log --graph --all命令并研究输出。这将显示所有分支及其收敛/发散历史记录。同时尝试git log --graph --all .gitignore将历史报告限制为相关文件。我希望你会看到更可预测的结果,与Github显示的不同。

如果您的存储库中有其他用户,则会变得更加复杂。合作者可能会在推送过程中意外恢复旧分支。但是your link表示您不必担心这一点,因为这是单独的努力。