Git等同于最常见的Mercurial命令?

时间:2009-09-20 05:15:34

标签: git mercurial

我一直在使用Mercurial但想要快速演示Git。

Git的等价物是什么:

hg init . # start a project in the current directory
hg addremove # look for any added or deleted files
hg commit -m "comment" # commit any uncomitted changes
hg status # what have i changed since the last commit?

4 个答案:

答案 0 :(得分:103)

The Git-HG rosetta stone is not bad

在那里没有提到的两个其他陷阱。当我走另一条路的时候(git - > hg),我的博客文章中列出了这个列表。

Hg .hgignore,语法:glob与git的.gitignore行为相同。

Git .git / config,〜/ .gitconfig,使用git-config修改值
Hg .hg / hgrc,〜/。hgrc,使用hg help -c config

Git git commit -v
Hg hg diff |减; hg commit

Git gitk
Hg hg视图,或来自TortoiseHg

的视图

Git git gui
Hg Mercurial不提供GUI来选择更改集,只提供控制台hg record命令。

Git git rebase
Hg hg rebase。对于git rebase --interactive,有hg histedit或Mercurial Queues

Git git push URL; git remote add origin URL
Hg hg推送网址; $ EDITOR .hg / hgrc; [路径]默认=网址

Git gitk,git log origin / master..HEAD
Hg hg传出

Git git format-patch RANGE
Hg hg email -m filename -o

Git git add。 ;注意点
Hg hg add;不需要点。

Git git checkout REVISION-KEY
Hg hg更新CHANGESET


只是为了填补空白,来自Mercurial的一些最有用的命令:

Hg hg记录
Git git add -p; git commit

Hg hg inc [URL]
Git 没有真正的等价物。您只能执行相当于hg pull; hg log -r .:

的操作

Hg hg out URL
Git 如果您知道如何,请添加。

对于合并冲突解决方案,Mercurial中的hg resolve命令有一些可以改变行为的选项:

Hg hg resolve -m FILE(通过手动修复冲突问题将文件标记为已解决)
Git git添加文件

Hg hg resolve -u FILE将文件标记为未解决的文件 Git git reset HEAD FILE取消暂存文件

Hg hg resolve -l(列出已解决/未解决冲突的文件)
Git git status - 干净地合并的文件会自动添加到索引中,那些没有冲突的文件

Hg hg解析FILE(合并后,尝试重新合并文件)
Git 没有相当于我所知道的重新合并。

答案 1 :(得分:48)

答案 2 :(得分:12)

水银:

hg init . # start a project in the current directory
hg addremove # look for any added or deleted files
hg commit -m "comment" # commit any uncomitted changes
hg status # what have i changed since the last commit?

Git Equivalents:

git init
git add -A
git commit -am "comment" # -a is not necessary along with the above add -A
git status

答案 3 :(得分:1)

大致相同,没有addremove:

git init # Start a project in the current directory
git status # Displays both changes and added/removed files
git commit -m "comment" # commit any uncommited changes

但是,这些是您单独工作时使用的命令。当您想要将更改与其他人使用git pullgit push以及相关命令的工作合并时,您会进入整洁