HG简单使用

本文介绍了HG版本控制系统的基本操作,包括初始化版本库、添加文件、查看文件状态、提交、查看历史记录、从主库拉取更新、解决合并冲突、使用web界面以及获取帮助等。在遇到合并冲突时,需手动编辑冲突文件并使用`hg resolve`命令标记解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1.基本功能

以下命令除了hg clone以外,都需要在HG管理的目录及子目录下执行(目录和子目录执行效果相同)。

1. 版本库初始化

首先使用 hg clone 命令复制库,例如克隆主NGN库:在自己用户根目录下worksapce文件夹下运行hg clone /HGReposity/testDev,完成后可以看到在此目录下出现testDev目录,这个目录即为一个HG库。对一个项目此操作仅需一次,以后与主库的同步使用hg pull。

2. 添加新文件和查看文件状态

在下载好的目录中开发新自己的文件后,用hg add “文件名”将这个文件交给hg进行管理。然后可用hg status –all查看本文件是否被添加上,最前字段为‘A’表示在上一次commit后新添加的文件,‘M’表示上一次commit后修改过的文件,‘C’ 表示上一次commit后没有修改过的文件,‘I’表示被忽略不进行版本追踪的文件(一般是如*.o之类文件),‘?’表示hg尚未管理状态未知的文件。

使用hg diff可以查看现在文件与上一次commit的版本的文件的差别。

3. 本地提交(commit)

对已被管理的文件修改后,使用hg commit命令,在随后出现的vi界面输入commit日志退出保存即可。这里的commit仅提交到本地,与主库无关

4. 记录(log)

想要确认提交完成没有,查看版本历史,用hg log。

5. 从主库取文件(pull)

想从主库上取得当前主库中软件版本,使用hg pull, 如在前面例子中,hg pull /HGReposity/NGNDev ,会将主库中changeset同步到本地,(注意!此时文件并没有改为主库上的版本)再使用hg update 更新文件,使文件到达最新状态。

6. 合并冲突

在hg pull和hg update后,可以提示有merge conflict,表示合并产生冲突,此时将无法commit。主要是本地库和主库对同一个文件的同行进行了修改,hg无法自动合并。需要手动合并。

具体手动合并过程:

打开在merge conflict提示merge失败的文件, 寻找如下注释形式:

<<<<<<<<<<local

==============

>>>>>>>>>>

的地方,===以上到<<<的内容为本地库此文件的内容,以下为远端库此文件的内容。选择合并代码为合适代码,然后将它添加的注释去掉。

将所有文件中此类问题修改后,使用hg resolve –m -a将所有文件标记为已解决。再commit即可。

7. web界面

使用hg serv,即可启动web页面进行访问,地址默认为http://localhost:8000

 

8. 获得帮助

hg有内建的帮助系统,参数是help,help后还可以以需要查询的命令为参数。Hg还有很多命令,并且以上介绍的命令一般都有详细的参数,可通过hg help “命令名”查询。

比如:

~/workspace/hg help init

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值