1. Mercurial
简介
对于软件开发项目,管理源代码的重要性只略低于编写代码的重要性。用于项目源代码管理的软件和解决方案也有很多。现在越来越多的项目,尤其是开源的项目,开始使用分布式代码管理系统。相比传统的集中式的代码管理系统来说,分布式的具有如下优点:
传统的版本控制系统使用集中式的仓库,一些仓库相关的管理就只能由管理员一个人进行。由于采用了分布式的模型,每个用户管理自己的仓库,管理员只需协调同步这些仓库。
分布式系统比集中式的单服务器系统更健壮,单服务器系统一旦服务器出现问题整个系统就不能运行了,分布式系统通常不会因为一两个节点而受到影响。
由于同步可以放在任意时刻进行,分布式的代码管理方式允许离线进行管理,只需在有网络连接时同步。
现在分布式管理的系统也很多,下面列举了一些有大型项目使用的:
系统名
|
实际项目
|
SVK
|
RoR;Wine;
…
|
Mecurial
|
Mozilla;Open Solaris;Xen;wget;ZFS
…
|
Bazaar-NG
|
Ubuntu; Launchpad;moin-1.6;Drupal;
用户列表...
|
Arch
|
Debian;moinmoin
…
|
git
|
linux-2.6
|
Monotone
|
Pidgin(Gaim)
|
Darcs
|
DuKuWiki;Psi ;prototype;
…
|
这里主要是介绍Mercurial
的一些基本使用并且不会涉及与其他分布式管理系统的比较。
Mercurial
是一种轻量级分布式版本控制系统,采用 Python
语言实现,易于学习和使用,扩展性强。Mercurial
的指令是hg
… (
如果有人问为什么是hg,
那么可以查询下初中化学课本最后附录的元素周期表
J
)
。常用命令的使用可以参考这里中文版的教程:http://mercurial.selenic.com/wiki/ChineseTutorial
下面部分主要是介绍TortoiseHg
,这是GUI
界面的Mercurial
,我相信Windows
上的大多数使用Mercurial
的用户会更加喜欢使用带GUI
界面的软件而不是单纯的命令行。
2.
TortoiseHg
的使用入门
安装:
TortoiseHg
的安装没什么好说的,在这里http://tortoisehg.bitbucket.org/
下了Windows
的MSI
安装程序之后一路next
过去就好。安装完成之后需要重启一下。(注:不充启也可以使用,只是一些Windows
Shell
的扩展功能比如通过图标标记文件状态是最新版本或者过期版本等功能就无法展现)
新建一个仓库:
•
创建一个新的文件夹用来存放代码
•
进入这个文件夹,在右键菜单里选择TortoiseHg
的“Create
Repository Here”
命令
•
点击“Create”
按钮创建
为现有仓库创建一个副本:
•
创建一个新的文件夹用来存放仓库副本的代码
•
进入这个文件夹,在右键菜单里选择TortoiseHg
的“Clone”
命令
•
输入原仓库的地址创建本地副本
•
地址可以是远程的
•
也可以是本地的
修改并提交:
•
查看文件状态
TortoiseHg
通过不同的图标展示文件的状态,有更新的文件一目了然
•
在右键菜单里选择Hg
Commit
命令并输入注释来提交我们的修改
与其他人分享改变:
•
Mecurial
里的每次提交就是一个版本
•
可以通过导出功能(Export)
导出每个版本与上一版本相比修改的部分作为一个“补丁”分享给其他人
•
其他人收到补丁之后可以导入(Import
)自己的仓库以获得这个更新
•
补丁也可以批量导出/
导入
合并代码:
•
导出/
导入的功能比较便于交流但是有些局限性,特别是无法正确出去需要合并的代码(即不同的人对通一个文件有修改)。
•
可以通过Pull/Push
功能在代码仓库间分享改变并正确处理需要合并的部分
•
Pull/Push
功能可以在本机的仓库间分享改变,也可以通过SSH
和HTTP/HTTPS
与远程机器分享改变
•
TortoiseHg
自带了一个HTTP
Server
,可以容易的与远程机器的仓库间分享代码
•
Pull
或Push
的代码会以不同分支的形式出现,需要与本地代码合并,如果有多个分支,需要每个分支与本地代码依次合并
•
合并可能会遇到冲突的情况,Mecurial
提供多种解决冲突的办法
版本发布:
选择需要发布的版本,归档发布
3
.参考资料
Google
的《Analysis of Git and Mercurial
》
http://code.google.com/p/support/wiki/DVCSAnalysis
Mercurial
使用教程
http://mercurial.selenic.com/wiki/ChineseTutorial
TortoiseHg
文档
http://tortoisehg.bitbucket.org/manual/2.1/
转自:http://blog.csdn.net/eatmilkboy/article/details/6729244
分享到:
相关推荐
Mercurial和TortoiseHg是一套强大的版本控制系统,尤其适合那些希望管理代码和项目变更的用户。Mercurial,常简称为Hg,是一个分布式版本控制系统,它允许开发者在本地存储完整的代码历史,无需中央服务器。Tortoise...
安装完毕后,TortoiseHg将与Windows资源管理器无缝集成,用户可以通过右键菜单轻松进行Mercurial的各种操作,提升开发效率。无论是初学者还是经验丰富的开发者,TortoiseHg都是一个强大的Mercurial版本控制工具。
8. **集成到Windows资源管理器**:TortoiseHg与Windows系统无缝集成,右键菜单中包含所有必要的版本控制操作。 在提供的压缩包中,有两个安装文件:"tortoisehg-5.5.0-x64.msi" 和 "tortoisehg-5.5.0-x86.msi",...
TortoiseHg V5.1.0 是一个基于Mercurial版本控制系统构建的图形化客户端,专为Windows用户设计。Mercurial是一种分布式版本控制系统,它允许开发人员跟踪和管理代码库的变化,便于协作和代码历史记录。TortoiseHg...
tortoisehg-5.9.2-x64 Mercurial(Hg)图形客户端(32 位+64 位)
Mercurial 是一种轻量级分布式版本控制系统,采用 Python 语言实现,易于学习和使用,扩展性强。...TortoiseHg 是一个跨平台的 Mercurial 分布式版本控制系统的可视化客户端工具。 此文件为目前官网最新版本.
TortoiseHg64-4.9是64位操作系统上的最新绿色版本,它是一个强大的Mercurial分布式版本控制系统(VCS)的可视化客户端工具。Mercurial本身是一个源代码管理软件,它允许开发者在没有中央服务器的情况下进行版本控制...
《TortoiseHg 4.9.1:掌握Mercurial分布式版本控制的利器》 在软件开发过程中,版本控制系统扮演着至关重要的角色,它能够帮助开发者追踪代码的变更历史,协同工作,并确保代码的稳定性和可维护性。TortoiseHg,...
TortoiseHg是由Mercurial社区开发的一款免费开源工具,它与Windows操作系统深度集成,提供了与Windows资源管理器无缝交互的体验。在TortoiseHg 5.1.0版本中,我们能看到一些关键的改进和优化,包括: 1. **增强的...
《TortoiseHg 5.0.2:可视化Mercurial版本控制的利器》 在软件开发领域,版本控制系统是不可或缺的工具,它能够帮助开发者跟踪和管理代码的变更历史,有效地协同工作。其中,Mercurial是一款广受欢迎的分布式版本...
好用的分布式版本管理工具Mercurial(简称Hg)的Gui版本tortoisehg。Mercurial的优势在于和SVN一样简单,但可以脱离服务器进行版本管理工作;既适合团队使用,也非常适合个人项目。这是v2.11.1的x64版。
#### Tortoisehg简介 **Tortoisehg**是一款基于Mercurial的图形化分布式版本控制工具,它为用户提供了一个简单直观的操作界面,使得即使是初学者也能快速上手。Mercurial是一种强大的分布式版本控制系统,被广泛...
除了Mercurial,TortoiseHg还能够与其他版本控制系统(VCS)协同工作,例如与Perforce、Subversion(SVN)和Git等系统的集成。这些集成可以帮助在不同VCS系统间转移代码,并使跨系统的工作流程变得可行。 最后,...
TortoiseHg是一款在Mac平台上非常受欢迎的代码版本控制系统,专为Mercurial(Hg)设计的图形用户界面。Mercurial是一种分布式版本控制系统,允许开发人员对项目源代码进行版本控制,便于协作和追踪更改。TortoiseHg...
tortoisehg Mercurial 32位 windows
好用的分布式版本管理工具Mercurial的gui客户端,tortoisehg-2.10.1-hg-2.8.1-x64。 Mercurial的操作类似于SVN,但可以脱离服务器的支持,既适合团队,也非常适合个人项目
TortoiseHg 是分布式的源码管理工具Mercurial的GUI客户端。
Mercurial 是一种轻量级分布式版本控制系统,采用 Python 语言实现,易于学习和使用,扩展性强。其是基于 GNU General Public License ...TortoiseHg 是一个跨平台的 Mercurial 分布式版本控制系统的可视化客户端工具。