如果我已经创建并推送了很久以前已合并到主人的主题分支,我是否可以安全地运行git push origin :foobranch
而不必担心它会以某种方式删除合并到master或其他分支的数据?< / p>
答案 0 :(得分:2)
只要没有未完成的提交,它就是安全的。如果你想确定
git checkout master
git merge foobranch
这应该导致快进合并(不影响历史记录)。如果没有,也许有未合并的提交。但是,现在您完全安全
git branch -d foobranch
git push origin :foobranch
答案 1 :(得分:2)
是的,您可以安全地删除已合并到另一个分支的分支。分支就像是提交图中的可移动指针,如果删除分支,它只是删除该指针。提交图仍然存在,在您的情况下,master
分支仍将包含您已删除的分支的历史记录。
答案 2 :(得分:1)
非常安全。
任何提交都链接到一个树(即您的项目文件),并且可能有几个提交指向同一个树。只有当没有提交链接到树时,它才可能被垃圾收集。
如果你仍然需要以某种方式重新收集它,甚至没有本地引用提交,那么reflog就会在90天后清除(我想想)
答案 3 :(得分:1)
删除提交或分支不会影响其他分支上的其他提交,即使该分支在分支之间共享,或者分支已合并到其他分支中。