Linux 中使用 hg
命令的完整指南
hg
是分布式版本控制系统 Mercurial 的命令行工具,用于高效管理代码和文件变更,以下是在 Linux 中安装、配置和使用 hg
的详细步骤。
安装 Mercurial
在终端执行以下命令(根据发行版选择):
# CentOS/RHEL sudo yum install mercurial # Fedora sudo dnf install mercurial # Arch Linux sudo pacman -S mercurial
验证安装:
hg --version # 输出示例:Mercurial Distributed SCM (version x.x)
基础配置
首次使用需设置用户信息(用于提交记录):
hg config --edit # 编辑配置文件
在配置文件中添加:
[ui] username = 你的名字 <邮箱@example.com>
核心命令详解
仓库操作
命令 | 作用 | 示例 |
---|---|---|
hg init |
初始化新仓库 | hg init my_project |
hg clone |
克隆远程仓库 | hg clone https://hg.example.com/repo |
hg status (hg st ) |
查看文件变更状态 | hg st |
hg add |
添加文件到跟踪列表 | hg add file.txt |
hg commit (hg ci ) |
提交变更 | hg ci -m "修复登录BUG" |
hg push |
推送提交到远程仓库 | hg push |
hg pull |
拉取远程更新 | hg pull |
hg update (hg up ) |
更新工作目录到指定版本 | hg up 版本号 |
查看历史与差异
hg log # 查看完整提交历史 hg log -l 5 # 仅显示最近5条记录 hg diff # 显示未提交的变更差异 hg diff -r 版本A -r 版本B # 比较两个版本的差异
撤销操作
hg revert file.txt # 撤销文件的未提交修改 hg rollback # 撤销最近一次提交(谨慎使用)
分支管理
命令 | 说明 |
---|---|
hg branch |
查看当前分支 |
hg branch 新分支名 |
创建新分支 |
hg update 分支名 |
切换到指定分支 |
hg merge 分支名 |
将其他分支合并到当前分支 |
hg branches |
列出所有分支 |
示例工作流:
hg branch feature-login # 创建 feature-login 分支 hg ci -m "创建登录功能分支" hg update main # 切换回 main 分支 hg merge feature-login # 合并分支 hg ci -m "合并登录功能"
高级技巧
- 忽略文件:
创建.hgignore
文件,定义忽略规则(如*.log
、/tmp/
)。 - 标签标记:
hg tag v1.0 # 创建标签 hg tags # 查看所有标签
- 备份仓库:
hg bundle --all backup.hg # 生成备份文件 hg unbundle backup.hg # 恢复备份
常见问题解决
- 冲突处理:
合并时若出现冲突,文件会标记为U
(Unresolved)。
手动编辑冲突文件 → 执行hg resolve -m 文件
→ 完成提交。 - 权限错误:
确保远程仓库地址有写入权限(如 SSH 配置正确)。
最佳实践
- 频繁提交:小步提交,避免大规模变更。
- 分支策略:为每个新功能/修复创建独立分支。
- 拉取前更新:先
hg pull
再hg update
,避免冲突。 - 注释规范:提交信息清晰描述变更目的(如
修复:用户登录失败问题
)。
hg
提供了强大的版本控制能力,适合个人及团队协作,通过本文的安装指南、命令示例和最佳实践,您可快速掌握 Mercurial 的核心操作,如需深入,参考官方文档:Mercurial SCM。
引用说明:
- Mercurial 官方文档 mercurial-scm.org
- Linux 包管理手册(
man apt
/man yum
)- 版本控制最佳实践参考《Pro Mercurial》(Apress)
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/5113.html