bst*_*rre 78 git version-control branch
我不想最终有82个功能分支,所以我想知道一旦我将它合并到master就删除功能分支的潜在缺点是什么.
工作流程:
git co -b feat-xyz
hack hack
git ci
hack some more
git ci
git co master
git merge feat-xyz
smoke test
git br -d feat-xyz
Run Code Online (Sandbox Code Playgroud)
这里有什么问题?
lkr*_*der 89
我在合并后删除,但我总是这样做git merge --no-ff,以避免快速转发,以便分支历史在图表上可见.我想了解功能分支离开开发分支的位置以及它加入的位置:

这取自Vincent Driessen 成功的Git分支模型,这是一个非常好的工作流程,可以与git一起使用,我申请了大部分项目.
mas*_*onk 54
合并后删除是通常的方法.这就是git branch -d检查以确保分支在删除之前完全合并的原因.
我可以想到保留一个分支的几个原因:你可能想要保留它,以防你在生产时遇到错误,或者你可能想要一个历史记录.
在任何一种情况下,您都可以选择在删除分支之前标记分支的头部.标签就像一个分支,因为它是一个指向提交的指针,除了一些细微的差异:1)瓷器通常不会在探测命令中显示标签,如git show-branch或tab-auto complete in checkout,2)检查一个会使你进入一个分离的(非参考)HEAD 3)你可以留下一个" 标记消息 ",这会导致标记像提交一样被保存为对象存储中的对象.
这样您就可以保留历史记录,如果您确实需要进行错误修复,我建议您只需为修补程序创建一个新的分支.
我可以想到为什么你可能想要保留一个功能分支的两个原因:
在实践中,合并后删除的大部分时间都很好.
典型的工作流程将是
// Create new branch
$ git checkout -b myfeature
// and then do some changes and commit them
// Switch to master branch
$ git checkout master
// Merge myfeature to master. --no-ff will always keep branch information.
$ git merge --no-ff myfeature
// Delete myfeature branch
$ git branch -d myfeature
// Push the changes
$ git push origin master
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22986 次 |
| 最近记录: |