Difference between revisions of "Mercurial/Tips And Tricks"
B michaelsen (talk | contribs) m |
B michaelsen (talk | contribs) |
||
Line 1: | Line 1: | ||
{{Mercurial}} | {{Mercurial}} | ||
This is the page to add your favorite Mercurial tip. | This is the page to add your favorite Mercurial tip. | ||
+ | __TOC__ | ||
= Tips and Tricks = | = Tips and Tricks = | ||
− | + | == After pulling/merging == | |
− | * | + | * <code>hg log --follow-first</code> is a convenient way to display your CWS changes at the top of the log. |
− | * | + | * <code>hg log --follow-first -P <original_clone_milestone></code> will show only the CWS changesets. |
− | * | + | * <code>hg outgoing</code> works as well, of course. |
− | + | == Combined diff which contains exactly the changes of your CWS without anything pulled from master == | |
− | + | * If your current milestone tag is locally available: <code>hg diff -r <current_milestone_tag></code> | |
− | + | * If your current milestone tag is *not* locally available (might happen, see above): | |
− | + | **search for your last pull/merge from the master with <code>hg log -m</code> | |
− | ** | + | ** <code>hg diff -r <second_parent_of_last_master_merge></code> |
− | ** Alternatively, if you just did a pull/merge from master: | + | ** Alternatively, if you just did a pull/merge from master: <code>hg export --switch-parent tip</code> |
− | + | == Styles == | |
− | * | + | The default output format of some commands does not suit you? Use styles: |
− | * | + | *<code>hg log --style=compact</code> |
+ | *<code>hg outgoing --style=changelog"</code> | ||
* Or create your own format with the template engine: | * Or create your own format with the template engine: | ||
− | ** | + | ** <code>hg outgoing --template '{date|shortdate} {author|person} {desc}\n' --newest-first</code> |
− | |||
− | |||
− | |||
− | |||
+ | == On Windows/cygwin == | ||
+ | === Using TortoiseHg in Cygwin === | ||
Depending on the cygwin version, using cygwins hg (and other tools) sometimes fails. TortoiseHg (http://bitbucket.org/tortoisehg/stable/wiki/Home) can be used as alternative. | Depending on the cygwin version, using cygwins hg (and other tools) sometimes fails. TortoiseHg (http://bitbucket.org/tortoisehg/stable/wiki/Home) can be used as alternative. | ||
Line 33: | Line 33: | ||
For the graphical interface of TortoiseHg Putty's pageant is the default ssh key provider. TortoiseHg allows easy graphical access to hg repositories within the Windows Explorer. | For the graphical interface of TortoiseHg Putty's pageant is the default ssh key provider. TortoiseHg allows easy graphical access to hg repositories within the Windows Explorer. | ||
+ | ==== Accessing repository over ssh ==== | ||
+ | * If you want to use the ssh client of your Cygwin shell (and also ssh-agent), add the following to the [ui] section of your mercurial.ini: ssh = ssh -C |
Revision as of 00:01, 27 October 2009
|
---|
Quick Navigation |
About this template |
This is the page to add your favorite Mercurial tip.
Tips and Tricks
After pulling/merging
hg log --follow-first
is a convenient way to display your CWS changes at the top of the log.hg log --follow-first -P <original_clone_milestone>
will show only the CWS changesets.hg outgoing
works as well, of course.
Combined diff which contains exactly the changes of your CWS without anything pulled from master
- If your current milestone tag is locally available:
hg diff -r <current_milestone_tag>
- If your current milestone tag is *not* locally available (might happen, see above):
- search for your last pull/merge from the master with
hg log -m
hg diff -r <second_parent_of_last_master_merge>
- Alternatively, if you just did a pull/merge from master:
hg export --switch-parent tip
- search for your last pull/merge from the master with
Styles
The default output format of some commands does not suit you? Use styles:
hg log --style=compact
hg outgoing --style=changelog"
- Or create your own format with the template engine:
hg outgoing --template '{date|shortdate} {author|person} {desc}\n' --newest-first
On Windows/cygwin
Using TortoiseHg in Cygwin
Depending on the cygwin version, using cygwins hg (and other tools) sometimes fails. TortoiseHg (http://bitbucket.org/tortoisehg/stable/wiki/Home) can be used as alternative.
To get rid of cygwin's hg rename /usr/bin/hg.
You can decide which ssl support you use in the cygwin shell. If you want to use the ssh-agent then you have to specify the following line in the [ui] section of ~/.hgrc: ssh = <Windows path to cygwin>\bin\ssh.exe -C
For the graphical interface of TortoiseHg Putty's pageant is the default ssh key provider. TortoiseHg allows easy graphical access to hg repositories within the Windows Explorer.
Accessing repository over ssh
- If you want to use the ssh client of your Cygwin shell (and also ssh-agent), add the following to the [ui] section of your mercurial.ini: ssh = ssh -C