我正在尝试在我的组织中实施SVN。我们有2台服务器:生产和开发。 一些程序员拥有自己的系统副本。
我们现在如何工作: 开发服务器在主干下。一些程序员直接在它上面工作。如果程序员有他自己的副本 - 他在svn中有私人分支。
主要问题在于生产服务器。在我们的系统中,我们没有发布版本,所以 - svn中没有标签。我为生产创建了单独的分支 - master。如果我们需要将一些提交从开发转移到生产 - 我们合并主干和主分支。
也许有其他方法可以转移和控制对生产服务器的更改? 或者使用不同的版本控制系统?
答案 0 :(得分:1)
我不确定你的意思是“程序员有他们自己的副本”......如果你使用SVN,他们都必须有本地副本才能工作。
无论如何,我建议您阅读Version Control with Subversion (the SVNBook),更具体地说是basic working cycle,然后查看tags的使用方式。每次你想要发布'释放'时,使用分支与主干相比肯定更容易使用,尽管有时你不得不这样做。
您还可以考虑使用其他SCM,例如Git,Mercurial或Bazaar。我真的很喜欢Git,但Bazaar可能是有史以来最好的SCM之一:易于使用且和Git一样好。 Git非常好,但可能需要一些时间来掌握,特别是如果你来自SVN。
从一个SCM切换到另一个SCM并非易事,特别是如果您已经拥有相当多的存储库,那么如果您打算这样做,请先使用一个小的,测试它,尝试保留版本历史记录SVN(如果目的地是Git,则有tools,然后选择大的。