Mercurial版本管理入门

由于hg略显小众,比不上git,但是本次课题需要用到,所以花一点时间来学习基本操作。

1.准备Mercurial

首先使用文本编辑器打开文件~/.hgrc(或Windows主目录中的mercurial.ini),并使用自己的用户名添加ui部分:

[ui]
username = Mr. Johnson <johnson@smith.com>

现在在其中添加一个新文件夹作为项目文件夹(会在当前目录下生成对应文件夹),并进入文件夹,添加文件,提交:

hg init project (创建一个工程文件夹)
cd project
echo 'print("Hello")' > hello.py (向文件中写入单引号中的内容)
hg add (向目录中添加文件)
hg commit -m "[MESSAGE]"(附加选项表示避免切换到编辑器)
hg log -v

2.文件的跟踪与不跟踪

hg status命令的输出结果中仅包含删除的(removed)、被修改的(modified)、重命名的(renamed)文件。hg不会自动的管理你仓库中文件,hg status命令会告诉你那些它不知道的文件,它会在这些文件的前面打上一个“?”号。如要让hg管理该文件,执行命令:hg add myfile.txt。此时运行hg st,你会看到文件myfile.txt前面的“?”号变成了“A”。执行hg commit命令之后,myfile.txt就不会再出现在hg status的输出结果之中。添加一个文件,hg什么也不会做,它只是在执行下一次提交(hg commit)之前对该文件“拍一张快照”。

如果你决定不让代码仓库跟踪你的文件,使用hg remove命令即可。文件删除之后,运行hg status后的输出结果中,被删除的文件之前会打上“R”标识符。使用hg remove删除一个文件后,hg将停止追踪该文件的任何改变。即使你重新创建一个与之同名的文件, hg也会无动于衷。删除一个文件并不会对该文件的历史带来任何影响。它仅仅从当前工作目录中移除文件的当前版本,并在下一次代码提交的时候让hg停止对该文件的追踪。如果你不是使用hg remove来删除一个文件,hg会认为文件丢失。它会在丢失的文件之前打上“!”标识符。如果意外的删除了丢失的文件,可以使用hg revert命令将其恢复。

可以使用hg diff查看文件的具体修改内容

3.复制与移动文件

若要复制文件,可以使用命令

hg cp hello.py copy

hg提供了hg copy命令来复制一个文件。用该命令来复制文件,hg会记住新的的文件是源文件的副本。在你合并代码的时候,它会对其作特殊的处理。在合并代码的时候,对myfile.txt所作的修改同步到了myfile-copy.txt。

如果你修改一个文件,但是在没有提交代码的情况下复制该文件,那么在该副本文件中仍将包含文件被修改的部分。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值