解释如何使用Git命令删除远程分支。

6
删除 Git 中的远程分支命令如下:
git push origin :/heads/[feature-name]  
       [feature-name] being the name of the branch

这完美地完成了工作,毫无疑问。
然而,仅通过打字,我无法联想到我所输入的实际上是在删除分支。

你能描述一下为什么这个命令会起作用吗?(我的问题与它的实现方式无关)

理解这一点,希望能帮助我更好地掌握git的工作原理。


好问题..我也在想同样的事情。 - hasen
2个回答

8
我们需要使用的git push格式如下:
git push <repository> <src>:<dst>

因此,使用git push origin :/heads/[feature-name]命令告诉git将一个空分支推送到origin的feature-name分支。这样你就可以清除它。


啊哈,终于让我明白了! - hasen

0
分支的名称是指向提交 SHA 的标签。您有效地删除了该标签。由于没有标签维护该分支,因此它被删除并且丢失。
另外,“删除”命令的语法如git push手册中所述:

git push origin :experimental 在原始存储库中查找与 experimental 匹配的引用(例如 refs/heads/experimental),然后将其删除。

或者可以使用 --delete 选项。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接