对于版本控制,我大部分时间都接触过Mercurial,但是想要更好地使用Git。我曾经有过一个工作流程似乎没有在Git初学者的教程和示例中显示,即从存储库中删除分支。
场景是这样的:主分支有一堆提交,并且在某些时候,我为某个功能创建了一个功能分支,该功能可能会在某个时间点合并。然而;分支被放弃了,更多的提交被添加到master。现在已经决定不需要在功能分支上开发功能,也不应该将其推送到中央存储库。在mercurial中,使用TortoiseHg,我会做以下事情:
http://i.imgur.com/hnLLrLF.png
从编号中删除编号为4,5和6的提交,留下我所需的最终存储库:
http://i.imgur.com/n42zbmg.png
我尝试过使用git branch -D <branch-name>
,但这似乎没有达到我的预期。似乎该分支上的提交保留在存储库中,它只是删除了分支名称。
使用Git存储库实现该工作流的最佳/最安全/最简单/最快/更多类型的方式是什么?
答案 0 :(得分:0)
删除远程分支
git push <remote name> --delete <branch name>
现在其他人需要修剪他们的追踪分支
git fetch --prune <remote name>
删除本地分支
git branch -D <branch name>