当您分支一些代码时,完成分支的工作,并将其合并回主干,您如何处理分支?从存储库中删除它?保留供参考?
好像你会保留它以供参考,但我想/branches
目录可能会变得混乱。
(如果这不是人们普遍认同的,请发表评论,我会将其作为社区维基。)
jleedev
是对的 - 我们应该指定我们正在谈论的版本控制系统。
我考虑过Subversion ,但也很乐意听到有关其他系统的回复。请指明您正在回答哪一个,或< bribery>如果您想获得接受的答案< / bribery> ,请比较和对比多个系统。
答案 0 :(得分:8)
现在我使用Git,是的,当我完成它们时,我会删除分支。这是因为在Git中,分支只不过是指向特定提交的标签。
当我第一次听到这个时,我并不太明白,但这确实是真的。如果您进入Git版本控制下的项目并打开.git/refs/heads
,您将看到每个分支的一个文件,包括master。每个文件都包含提交的哈希值。就是这样。
显然,创建这样一个文件非常便宜,这就是为什么分支在Git中很便宜的原因。反过来,这就是为什么我可以经常分支,而且像add_bells_to_the_widget
这样的分支堆积在各处都是愚蠢的。
一旦分支合并为master,其提交就是master分支历史的一部分。保持分支的唯一目的是知道我认为哪个提交在分支上的最后一个。当代码投入生产时,这与我无关。
答案 1 :(得分:4)
我删除了重新整合的分支,因为我不再需要它们了。无论如何,Git和Mercurial保持分支/合并历史。在subversion中,我会让旧的分支引用提交历史记录。
答案 2 :(得分:2)
我总是喜欢保留树枝。是的,我可以将它们用作参考,或者只是随时检索某个版本。
答案 3 :(得分:1)
SVN用户通常tag
分支以保持分支目录清洁,没有?
答案 4 :(得分:0)
在我工作的每个项目中,我们一旦完成它们就会删除开发分支。但是,当我们释放并暂时保留这些代码时,我们会对代码进行分支
答案 5 :(得分:0)
我从未删除过分支机构,但认为这是个人品味的问题。删除分支时,实际上并没有从存储库中删除修订。
答案 6 :(得分:0)
如果分支机构有可能拥有自己的生命,显然你会保留它。如果没有,我可能会保留它但撤消写访问权限。磁盘很便宜。