代码之家  ›  专栏  ›  技术社区  ›  Luca

合并后删除远程分支

git
  •  0
  • Luca  · 技术社区  · 6 年前

    我正在使用git,并且正在处理一个本地分支,该分支也被推送到远程。

    git checkout dev
    git merge --no-ff myFeature
    

    现在,我按:

    git push origin dev
    

    我的问题是我不想再在功能分支上工作了,我已经在本地删除了它。在遥控器上删除它安全吗?我担心我可能会以某种方式破坏git。。。。

    2 回复  |  直到 6 年前
        1
  •  3
  •   Philippe    6 年前

    要真正理解答案,必须理解git的概念。 Git将历史存储为这样的树(更确切地说是 DAG --有向无环图——):

    A git Dag

    没有指针指向的每一个提交都可能“被认为”丢失(在我们的例子中,这并不完全是一个细节)。

    计算

    一旦你明白了,你就明白了C5 iss53 --你的 feature branch在您的例子中是--),由merge commit C6指向,而merge commit C6由ref指向 master .

    所以你可以删除 它不会改变任何承诺,所以你不会失去任何东西!

        2
  •  2
  •   Abizern    6 年前

    如果合并了分支并推送到远程,则可以安全地删除远程上的分支。