这个工具在国内很少人使用,所以中文资料匮乏.只有官方的website上有一些少得可怜的中文资料了.不过总体上来说,hg还是比较好用的。

这里绍一下hg服务器的配置。关于hg在基本用法参见mercrial的官方网站。在做以下操作时,请到 http://www.selenic.com/mercurial/下载安装hg.

1.建立用户hgrepo

其它用户将用这个账户用hg服务器push代码。

useradd hgrepo -d /home/hgrepo # add user hgrepo

passwd hgrepo

2.建立hg代码仓库

如果代码仓库名称为project.hg,则可用如下命令。

cd /home/hgrepo

mkdir project.hg

cd project.hg

hg init # 初始化代码仓库

建立一个测试文件

echo "hello, mercurial" > sample.txt

hg add  # add

hg ci     # check in

3. 打开http

打开一个端口,让远程用户可以clone仓库中的代码.

在打开端口前请确定文件权限正确。

更改文件权限

chown hgrepo.hgrepo /home/hgrepo/project.hg -R

chmod og+rw /home/hgrepo/project.hg -R

打开端口

cd  /home/hgrepo/project.hg -R

hg serve -p 8002 &

可将上面两行加入/etc/rc.local这样就可以在开机的时候自动运行了。

4.使用hg

完成步骤3以后,我们就可以使用了。

clone到本地

例如你的服务器的名字为test.

hg clone http://test:8002

然后在本地目录就会出现一个project.hg的一个copy.

修改Client端的配置

更改.hg/hgrc,加上default-push和username

[paths]

default = http://test:8002

default-push = ssh://hgrepo@test//home/hgrepo/project.hg/

[ui]

username=shaohui.zheng

这样你就可用hg push 向服务器提交code了。这时服务器会问你passward,这个password就是用户hgrepo的password.

Good Luck.

官方网站

-------------------------------------------

使用:

1.初始化

假设你的源代码目录为proj,执行以下步骤可以建立初始的repository

$ cd proj

$ hg init         //生成repository

$ hg add /fullpath/filename //加入文件

或者

$ hg addremove    //加入可识别的文件,去除其他文件

$ hg commit       //生成你的代码的第一个版本

执行此命令会让hg调用vi,这时你可以键入一些关于当前提交内容的一些信息,然后保存退出,这个版本就行程了。

2.版本

以后每当你改动文件后都可以使用hg commit命令来生成一个新的版本

$ hg parent  //查看当前的版本

$ hg log     //查看所有历史版本

$ hg tag    //可以在一些重大的阶段制作tag,以便于将来对代码的一些里程碑进行回溯

$ hg tags   //查看所有的tag,进行大的版本比较

$ hg co 版本号 //可以检出任意一个版本进行修改

而如果需要废弃某一版本后的所有版本可以使用hg strip 版本号,这样以后的提交的版本号将会从此版本号之

后计算。

3.文件

$ hg status  //查看现在代码中文件的状态,m表示修改过,a表示新加的文件,

?表示文件状态未知。

新生成的文件使用 $ hg add /fullpath/filename后状态就会由?变为a

!!!新生成的文件务必要用add命令加入repository,否则在做diff文件的时候会没有新文件的内容!!!

$ hg revert //当你改变了一些文件又后悔后就可以使用此命令来取消改动

$ hg clone source dest //可以完整地将一个repository拷贝到另一个目录,这很适合做分支处理或者作一些实验型代码。

$ hg update  //从原始代码树中取得最新的更新

$ hg pull 和 hg push 分别从原始地代码树中取得或者提交最新更新地文件

4.patch

$ hg diff //比较当前改动和当前版本的区别,也可以用-r参数指定两个版本进行比较,比较的结果可以从定向到文件,此文件即是一个标准的patch文件。

$ hg import /fullpath/filename //将patch文件打到当前的代码树上。

linux下hg无法运行_Linux下Mercurial (hg)配置说明相关推荐

  1. linux下hg无法运行_Linux下Mercurial(hg)配置说明

    这个工具在国内很少人使用,所以中文资料匮乏.只有官方的website上有一些少得可怜的中文资料了.不过总体上来说,hg还是比较好用的. 这里绍一下hg服务器的配置.关于hg在基本用法参见mercria ...

  2. linux mysql 编码修改吗_Linux下mysql 修改编码

    所做的酒店管理系统,今天用中文测试了下,发现出错了,想了下应该是mysql数据库编码的问题. 网上讲的很多都是windows的,这边整理出一份linux的 服务器系统为CentOS6.5 网页数据的编 ...

  3. linux下docker安装步骤_linux下安装mysql8步骤

    养成习惯,先赞后看!!! @TOC 1.检查是否还有之前的版本信息 这里步骤和之前的文章一样,自行查看. 2.下载mysql压缩包 这里直接提供链接给大家: 链接:https://pan.baidu. ...

  4. linux下hg无法运行_Linux 无法启动常见的几种原因及解决办法

    导致 Linux 无法启动的原因有很多,下面良许小编就将常见的几种原因及解决办法进行详述,希望对大家有所帮助. 文件系统配置不当,如 /etc/inittab文件./etc/fstab 文件等配置错误 ...

  5. linux怎么创建python文件_Linux下创建python脚本并运行(入门)

    1.首先定位到一个文件夹,然后使用vim编辑器:vim test.py 就创建了python脚本文件,并且进入编辑状态 2.编辑好之后按Esc切换到命令模式,然后输入:wq 回车就自动保存完成了,然后 ...

  6. linux关闭mysql日志记录_linux 下mysql 运行一段时间后自动关闭,日志无异常

    5月5日启动mysql,6月5日5:01:04mysql关闭,启动后运行正常,日志如下(ps:mysql关闭后,ssh登录不了服务器)15050509:49:19mysqld_safeStarting ...

  7. linux下打开配置文件命令_Linux下用户权限相关命令

    09.Linux下用户权限相关命令 用户权限的基本概念: 用户 是Linux 系统工作中重要的一环,用户管理包括 用户 与 组 管理 在Linux系统中,不论是由本机或是远程登陆系统,每个系统都必须拥 ...

  8. 查看linux mysql 账户权限设置_Linux下mysql新建账号及权限设置各种方式总结

    来自:http://justcoding.iteye.com/blog/1941116 1.权限赋予 说明:mysql部署在服务器A上,内网上主机B通过客户端工具连接服务器A以进行数据库操作,需要服务 ...

  9. linux下mysql服务架设_linux下源码搭建php环境之mysql(一)

    现在已经大半夜了,五一劳动节挺无聊的. 折腾一下吧,实在是睡不着.于是乎在电脑上安装个虚拟机,然后呢,在虚拟机上搭建一个php环境. 首先我得安装MYSQL吧.发现遇到的问题真多..待我娓娓道来. 主 ...

最新文章

  1. 无法安装到这个磁盘 这台计算机,安装Win7提示无法安装到这个磁盘怎么办
  2. my wordpress
  3. 【FI模块学习笔记】 固定资产概述(上)
  4. Linux 下搭建 Java Web 开发环境
  5. 顺时针打印3*3矩阵
  6. C++(STL):16---deque之常规用法
  7. zookeeper在Windows底下的安装和使用
  8. Quartz总结(四):动态修改定时器二
  9. 计算机数字媒体学什么以后,数字媒体设计是学什么的?以后的发展方向是什么?...
  10. 如何区分1位和4位数码管引脚图
  11. (P45)面向对象版表达式计算器:Storage类实现
  12. mac环境下搭建frida环境并连接网易mumu模拟器
  13. hdu 5234 Happy birthday 背包 dp
  14. ShowWindow(SW_SHOWNORMAL)
  15. GICV2GICV3的基础知识
  16. java使用mybatis 调用存储过程返回一个游标结果集
  17. 核芯显卡和集成显卡、独立显卡的区别是什么
  18. 【单片机毕业设计】【mcuclub-jj-013】基于单片机的衣柜的设计
  19. c语言数组求欧几里得距离,计算scipy-csr矩阵中的欧氏距离
  20. jmeter使用beanshell中字符串转换为long的实际操作

热门文章

  1. kitematic利用docker下载mysql的镜像
  2. 从零开始编写minecraft光影包(4)泛光性能与品质优化
  3. 【HAVENT原创】JS 屏蔽/禁止双击选中文字
  4. 2021年度全国勘察设计注册工程师执业资格考试成绩合格人员公示和资格核查的通知汇总(3月18日更新)
  5. 运行github上的项目的教程
  6. axios传递数组的方法
  7. C# 8进制 16进制 转 rgb
  8. 【论文阅读】AU检测|《Deep Adaptive Attention for Joint Facial Action Unit Detection and Face Alignment》
  9. 【华为OD机试真题 C语言】189、 Excel单元格数值统计 | 机试真题+思路参考+代码分析
  10. vue-pdf 组件实现 pdf预览效果+点击打印按钮直接弹窗打印指定pdf文件