Mercurial > hg
view tests/test-merge-local @ 11524:24965bb270b7
dispatch: add shell aliases
This patch adds git-style "shell aliases" to Mercurial.
Any alias with a definition beginning with a '!' will be treated as a shell
alias. For example:
[alias]
echo = !echo
qempty = !hg qrefresh -X "`hg root`" ; echo Emptied patch "`hg qtop`"
$ hg echo foo
foo
$ hg qempty
Emptied patch foo
$
author | Steve Losh <steve@stevelosh.com> |
---|---|
date | Wed, 07 Jul 2010 18:49:43 -0400 |
parents | 46280c004f22 |
children | 4c94b6d0fb1c |
line wrap: on
line source
#!/bin/sh hg init echo "# revision 0" echo "unchanged" > unchanged echo "remove me" > remove echo "copy me" > copy echo "move me" > move for i in 1 2 3 4 5 6 7 8 9; do echo "merge ok $i" >> zzz1_merge_ok done echo "merge bad" > zzz2_merge_bad hg ci -Am "revision 0" -d "1000000 0" echo "# revision 1" hg rm remove hg mv move moved hg cp copy copied echo "added" > added hg add added echo "new first line" > zzz1_merge_ok hg cat zzz1_merge_ok >> zzz1_merge_ok echo "new last line" >> zzz2_merge_bad hg ci -m "revision 1" -d "1000000 0" echo "# local changes to revision 0" hg co 0 echo "new last line" >> zzz1_merge_ok echo "another last line" >> zzz2_merge_bad hg diff --nodates | grep "^[+-][^<>]" hg st echo "# local merge with bad merge tool" HGMERGE=false hg co hg co 0 hg diff --nodates | grep "^[+-][^<>]" hg st echo "# local merge with conflicts" hg co hg co 0 hg diff --nodates | grep "^[+-][^<>]" hg st echo "# local merge without conflicts" hg revert zzz2_merge_bad hg co hg diff --nodates | grep "^[+-][^<>]" hg st