附上两个站点:

http://z42.readthedocs.org/zh/latest/devtools/hg.html

http://bucunzai.net/hginit/

Mercurial(hg)是个版本管理工具,类似于git,但是它有自己的特点,比如可以一键生成web。


添加用户名

在.hg目录下有个hgrc文件,将下面代码丢到该文件的最底下即可,代码中的等号之后并无要求,写中文都是可以的。

[ui]
username = John Doe<john@example.com>

初始化一个仓库:hg init

查看当前工作目录跟仓库的区别:hg sum

提交未跟踪的文件:hg add 如果没有带文件名的话就提交全部了

变更

新文件即将需要被commit:hg add <new_file>

将某个已跟踪的文件从下一次commit开始移除:hg remove 文件可能暂时还在,但是commit之后就不在咯。

将当前目录切换到一个历史版本:hg update -r <版本号> 版本号写简写就行了,目录下的任何东西会被处理。

提交到远程仓库:hg commit 这样会提交所有文件,我们可以在commit后加文件名来只提交几个文件,也可以-m <评论>来写log信息,也可以com来代替commit。

列出当前版本库等待推送的变更列表:hg outgoing 列出即将被push的内容。

列出中央库中我所没有的所有变更:hg incoming 列出即将被pull下来的内容。

拉取远程库的最新变更:hg pull 所有最新的都被拉下来。

有两个head需要merge:hg merge 自动合并,如果没有冲突的话。

有两个以上head需要merge:hg merge -r <版本号> 需要指定tip与哪个版本号一块merge。

切换本地目录到tip上去:hg up 直接就切了,其实用的是update指令的简写。

清除掉那些残余的修改:hg update --clean 在误merge时,或者奇怪的问题出现可以试试。

将修改的文件恢复到最近一次提交后的状态:hg revert

撤销最后一次提交, 前提是你还没有push:hg rollback 注意看heads的变化啊。

推送当前的变更:hg push url是可以省略的,就推到hg paths那里。

查看

查看一个文件的任何历史版本:hg cat 还可以试用-r <版本号>来看这个变更。

查看一个文件在两个版本中的变动:hg diff -r : v1和v2是版本号。

查看当前是在哪个版本下工作的:hg parent 很可能不是tip。

显示远程版本库列表:hg paths 你推送的东西就是到这里了。

功能

启用一个本地web server供别人拉取仓库:hg serve

拉取仓库默认需要ssl,可以关了它:在hgrc文件中设置[web]push_ssl=False allow_push=*重启即可,重启也是hg serve。

克隆别人的仓库:hg clone <地址> 也就是别人试用hg serve跑起来之后的地址复制过来就可以了。

Mercurial笔记(hg命令)的更多相关文章

  1. memcached学习笔记——存储命令源码分析下篇

    上一篇回顾:<memcached学习笔记——存储命令源码分析上篇>通过分析memcached的存储命令源码的过程,了解了memcached如何解析文本命令和mencached的内存管理机制 ...

  2. memcached学习笔记——存储命令源码分析上篇

    原创文章,转载请标明,谢谢. 上一篇分析过memcached的连接模型,了解memcached是如何高效处理客户端连接,这一篇分析memcached源码中的process_update_command ...

  3. MOOS学习笔记3——命令行

    MOOS学习笔记3--命令行 例程 /** * @code A simple example showing how to use a comms client问问怎么样 */ #include &q ...

  4. hg命令

    hg常用命令 hg命令跟git命令大同小异 hg version 查看hg版本 hg clone url 克隆代码仓库 hg branch newBranch 创建分支 hg update other ...

  5. 分布式版本控制工具Mercurial------Linux下hg命令的使用

    1.关于hg命令选项: 每一个每一个命令选项都有一个长的名称,如hg log 命令会使用 –rev选项; 大多数选项拥有一个短的名称,如—rev有一个-r的短名: 长名称以两条横线(–)作为起始,短名 ...

  6. 【山外笔记-SVN命令】svnlook命令详解

    本文打印版问文件下载地址 [山外笔记-SVN命令]svnlook命令详解-打印版.pdf 一.命令简介 svnlook是检验Subversion版本库不同方面的命令行工具,不会对版本库有任何修改,只是 ...

  7. 【山外笔记-SVN命令】svn命令详解

    本文打印版文件下载地址 [山外笔记-SVN命令]svn命令详解-打印版.pdf 一.命令简介 svn命令用于Subversion命令行客户端,执行svn相关的操作. 二.命令语法 1.svn语法: ( ...

  8. Zookeeper笔记之命令行操作

    $ZOOKEEPER_HOME/bin下的zkCli.sh进入命令行界面,使用help可查看支持的所有命令: 一.节点相关操作 create [-s] [-e] path data acl creat ...

  9. [Golang学习笔记] 02 命令源码文件

    源码文件的三种类型: 命令源文件:可以直接运行的程序,可以不编译而使用命令“go run”启动.执行. 库源码文件 测试源码文件 面试题:命令源码文件的用途是什么,怎样编写它? 典型回答: 命令源码文 ...

随机推荐

  1. 搭建Hadoop2.6.4伪分布式

    准备工作 操作系统 CentOS 7 软件环境 JDK 1.7.0_79 下载地址 SSH,正常来说是系统自带的,若没有请自行搜索安装方法 关闭防火墙 systemctl stop firewalld ...

  2. Office2010与vs2008不兼容导致的一系列问题(vs设计视图打不开,无法启动Asp.Net Development Server)

    vs2008打开aspx文件时设计界面死机的解决 一.突然有一天,在使用vs2008从源视图向设计视图切换时,界面出现了假死现象,重装后亦无效.我从网上搜索原因,发现很多朋友都有类似的问题,但解决方案 ...

  3. javap查看class文件

    通过JVM编译java文件生成class字节码文件,很多时候很想用工具打开看看,目前还不清楚哪一个软件专门查看class文件的,但是通过windows下的javap命令可以查看详细的class文件 S ...

  4. python 中的高级函数map()

    map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 例如,对于list [1, 2 ...

  5. Informatica相同环境与不同环境的导入导出( Repository Name,Integration Service Name,Folder Name是否相同):

    Informatica相同环境与不同环境的导入导出( Repository Name,Integration Service Name,Folder Name是否相同): 1.repository N ...

  6. HTML5与CSS3经典代码

    1)全屏背景 body { background: url(../img/pic.jpg) no-repeat center center fixed; background-size: cover; ...

  7. 推荐几款实用的Android Studio 插件

    推荐几款实用的Android Studio 插件 泡在网上的日子 发表于 2015-10-09 10:47 第 17453 次阅读 插件,Android Studio 10 编辑推荐:稀土掘金,这是一 ...

  8. Android Design Support Library使用详解

    Android Design Support Library使用详解 Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的And ...

  9. swift 构建类

    参开 http://blog.csdn.net/chelongfei/article/details/49784633 在 Swift 中, 类的初始化有两种方式, 分别是 Designated In ...

  10. HTTP2试用小记

    原文:https://www.clarencep.com/2016/11/17/upgrade-nginx-to-support-http2/ 这两天把公司的网站升级到了全站https. 顺便瞄到了H ...