【发布时间】:2012-07-05 08:19:36
【问题描述】:
我刚跳进一个项目,项目是用SVN维护的。但是它没有主干目录,现在我想对项目做一些实验,但我不想干扰其他人的工作,然后我想我应该做一个分支,但我不能重组项目一个新的主干,那么基于没有主干目录的项目创建一个新分支的最佳实践是什么?
【问题讨论】:
我刚跳进一个项目,项目是用SVN维护的。但是它没有主干目录,现在我想对项目做一些实验,但我不想干扰其他人的工作,然后我想我应该做一个分支,但我不能重组项目一个新的主干,那么基于没有主干目录的项目创建一个新分支的最佳实践是什么?
【问题讨论】:
让我们使用分布式版本控制系统(如Baazar,但Git 或Mercurial 也一样)。
使用 BZR,您可以从 SVN 创建一个分支,然后将该分支推送到您想要的位置:本地硬盘、网络、http/ftp 服务器等...
您可以与 SVN 同步,并将分支放在您想要的位置,甚至可以快速将其推回 SVN。不会干扰其他人的存储库。
您可以使用此类分发工具的所有新功能(3 路合并、本地提交、更快的速度)。
我会推荐 Bazaar,因为它非常接近 SVN。
【讨论】:
trunk 只是一个常规名称。如果所有内容都至少包含在一个目录中(而不是直接在根目录中),您可以创建该目录的一个分支。如果所有内容都直接位于根目录下,请与您的同事交谈并决定与他们一起遵循最佳实践:将所有内容移至主干目录下。
【讨论】:
在项目的父级创建一个分支文件夹并分支到它。
【讨论】:
您可以创建一个主干目录并使用 SVN relocate 命令将树移动到其中。
或者你可以只创建一个标签/分支目录并使用它们,它很乱但没有一些重组,那么它总是会很乱:(
【讨论】: