在git中删除远程分支的命令如下:
git push origin :/heads/[feature-name]
[feature-name] being the name of the branch
这完美地完成了工作,确实如此 但是通过输入它,我无法确定我输入的内容实际上正在删除分支。
请说明为什么这实际上有效? (我的问题与如何实施无关)
理解这一点,希望能帮助我更好地掌握git的工作原理。
答案 0 :(得分:8)
git push的格式(对我们来说)是:
git push <repository> <src>:<dst>
所以使用 git push origin:/ heads / [feature-name] 表示git将空分支推送到origin的feature-name分支。 所以你要清理它。
答案 1 :(得分:0)
分支的名称是指向提交SHA的标签。您正在有效地删除该标签。由于维护该分支没有标签,因此会被删除并丢失。
除此之外,“delete”命令被定义为具有该语法,如git push
的手册页中所述:
git push origin:实验性的 找到与原始存储库中的实验匹配的引用(例如 refs / heads / experimental),并删除它。
或者可以使用--delete
选项。