Esp*_*sen 13 version-control mercurial dvcs
我刚刚开始研究一个使用Mercurial作为版本控制系统的项目,我需要一些关于如何使用它的基本技巧.请使用此问题提供有关此技术的一些介绍性提示.
特别是,我正在寻找有关最佳程序使用和最佳技术的提示(分支机构,进出检查等等.我需要学习最佳实践!)
Ste*_*ons 14
我知道你已经拥有Mercurial网站,但对我来说最有用的资源是Mercurial书.这是该程序及其使用方法的绝佳概述.
我发现学习Mercurial的最佳方法就是在项目中使用它.我导入了Mercurial一个我从subversion导出的项目,并用它进行了一些定期开发.我确保为不同的变更集克隆存储库,以便我可以习惯合并和更新.我还没有学到所有的高级用途,但我现在已经非常坚定了,并且还没有切换回Subversion.
很多项目都有不同的提交工作流技术.有些人会从开发人员那里推动变革,例如集中式系统,有些人会从贡献者(例如Linux)中获取变化.如果不了解项目的流程,很难概括太多.
这就是我开发的方式:
project-trunk或project最终项目版本project-localproject-local为我的每个更改克隆树:例如.project-addusers,project-141等等.project-local存储库project-local送到的更改project-trunk我有干净的project-local树,因为我可以一次将所有的变更集推回到主干,如果有一组相关的变化需要一起推回,这是有帮助的.
至于工具,它取决于您的平台.我只是使用vanilla命令行工具.来自TortoiseSVN,转到命令行有点变化.但我现在很好.我尝试使用TortoiseHg,但它在我的Windows 7 x64虚拟机上运行不正常.我听说在支持的32位平台上它要好得多.
Dav*_*one 14
以下是Joel Spolsky撰写的关于Mercurial 的有用教程.
它涵盖了基本用法和命令,以及如何在更概念的层面上使用Mercurial.如果您已经熟悉SVN,那么第一部分绝对值得一读:它讨论了SVN和Mercurial之间的主要概念差异,因为尝试以与使用SVN相同的方式使用Mercurial会遇到麻烦.