|
|
$ hg init test
|
|
|
$ cd test
|
|
|
|
|
|
$ echo a > a
|
|
|
$ hg add a
|
|
|
$ hg commit -m "test" -d "1000000 0"
|
|
|
$ hg history
|
|
|
changeset: 0:0acdaf898367
|
|
|
tag: tip
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: test
|
|
|
|
|
|
|
|
|
$ hg tag ' '
|
|
|
abort: tag names cannot consist entirely of whitespace
|
|
|
|
|
|
$ hg tag -d "1000000 0" "bleah"
|
|
|
$ hg history
|
|
|
changeset: 1:3ecf002a1c57
|
|
|
tag: tip
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: Added tag bleah for changeset 0acdaf898367
|
|
|
|
|
|
changeset: 0:0acdaf898367
|
|
|
tag: bleah
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: test
|
|
|
|
|
|
|
|
|
$ echo foo >> .hgtags
|
|
|
$ hg tag -d "1000000 0" "bleah2" || echo "failed"
|
|
|
abort: working copy of .hgtags is changed (please commit .hgtags manually)
|
|
|
failed
|
|
|
|
|
|
$ hg revert .hgtags
|
|
|
$ hg tag -d "1000000 0" -r 0 x y z y y z || echo "failed"
|
|
|
abort: tag names must be unique
|
|
|
failed
|
|
|
$ hg tag -d "1000000 0" tap nada dot tip null . || echo "failed"
|
|
|
abort: the name 'tip' is reserved
|
|
|
failed
|
|
|
$ hg tag -d "1000000 0" "bleah" || echo "failed"
|
|
|
abort: tag 'bleah' already exists (use -f to force)
|
|
|
failed
|
|
|
$ hg tag -d "1000000 0" "blecch" "bleah" || echo "failed"
|
|
|
abort: tag 'bleah' already exists (use -f to force)
|
|
|
failed
|
|
|
|
|
|
$ hg tag -d "1000000 0" --remove "blecch" || echo "failed"
|
|
|
abort: tag 'blecch' does not exist
|
|
|
failed
|
|
|
$ hg tag -d "1000000 0" --remove "bleah" "blecch" "blough" || echo "failed"
|
|
|
abort: tag 'blecch' does not exist
|
|
|
failed
|
|
|
|
|
|
$ hg tag -d "1000000 0" -r 0 "bleah0"
|
|
|
$ hg tag -l -d "1000000 0" -r 1 "bleah1"
|
|
|
$ hg tag -d "1000000 0" gack gawk gorp
|
|
|
$ hg tag -d "1000000 0" -f gack
|
|
|
$ hg tag -d "1000000 0" --remove gack gorp
|
|
|
|
|
|
$ cat .hgtags
|
|
|
0acdaf8983679e0aac16e811534eb49d7ee1f2b4 bleah
|
|
|
0acdaf8983679e0aac16e811534eb49d7ee1f2b4 bleah0
|
|
|
868cc8fbb43b754ad09fa109885d243fc49adae7 gack
|
|
|
868cc8fbb43b754ad09fa109885d243fc49adae7 gawk
|
|
|
868cc8fbb43b754ad09fa109885d243fc49adae7 gorp
|
|
|
868cc8fbb43b754ad09fa109885d243fc49adae7 gack
|
|
|
3807bcf62c5614cb6c16436b514d7764ca5f1631 gack
|
|
|
3807bcf62c5614cb6c16436b514d7764ca5f1631 gack
|
|
|
0000000000000000000000000000000000000000 gack
|
|
|
868cc8fbb43b754ad09fa109885d243fc49adae7 gorp
|
|
|
0000000000000000000000000000000000000000 gorp
|
|
|
$ cat .hg/localtags
|
|
|
3ecf002a1c572a2f3bb4e665417e60fca65bbd42 bleah1
|
|
|
|
|
|
$ hg update 0
|
|
|
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
|
|
|
$ hg tag -d "1000000 0" "foobar"
|
|
|
$ cat .hgtags
|
|
|
0acdaf8983679e0aac16e811534eb49d7ee1f2b4 foobar
|
|
|
$ cat .hg/localtags
|
|
|
3ecf002a1c572a2f3bb4e665417e60fca65bbd42 bleah1
|
|
|
|
|
|
$ hg tag -l 'xx
|
|
|
> newline'
|
|
|
abort: '\n' cannot be used in a tag name
|
|
|
$ hg tag -l 'xx:xx'
|
|
|
abort: ':' cannot be used in a tag name
|
|
|
|
|
|
cloning local tags
|
|
|
|
|
|
$ cd ..
|
|
|
$ hg -R test log -r0:5
|
|
|
changeset: 0:0acdaf898367
|
|
|
tag: bleah
|
|
|
tag: bleah0
|
|
|
tag: foobar
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: test
|
|
|
|
|
|
changeset: 1:3ecf002a1c57
|
|
|
tag: bleah1
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: Added tag bleah for changeset 0acdaf898367
|
|
|
|
|
|
changeset: 2:868cc8fbb43b
|
|
|
tag: gawk
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: Added tag bleah0 for changeset 0acdaf898367
|
|
|
|
|
|
changeset: 3:3807bcf62c56
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: Added tag gack, gawk, gorp for changeset 868cc8fbb43b
|
|
|
|
|
|
changeset: 4:140c6e8597b4
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: Added tag gack for changeset 3807bcf62c56
|
|
|
|
|
|
changeset: 5:470a65fa7cc9
|
|
|
user: test
|
|
|
date: Mon Jan 12 13:46:40 1970 +0000
|
|
|
summary: Removed tag gack, gorp
|
|
|
|
|
|
$ hg clone -q -rbleah1 test test1
|
|
|
$ hg -R test1 parents --style=compact
|
|
|
1[tip] 3ecf002a1c57 1970-01-12 13:46 +0000 test
|
|
|
Added tag bleah for changeset 0acdaf898367
|
|
|
|
|
|
$ hg clone -q -r5 test#bleah1 test2
|
|
|
$ hg -R test2 parents --style=compact
|
|
|
5[tip] 470a65fa7cc9 1970-01-12 13:46 +0000 test
|
|
|
Removed tag gack, gorp
|
|
|
|
|
|
$ hg clone -q -U test#bleah1 test3
|
|
|
$ hg -R test3 parents --style=compact
|
|
|
|
|
|
$ cd test
|
|
|
|
|
|
issue 601
|
|
|
|
|
|
$ python << EOF
|
|
|
> f = file('.hg/localtags'); last = f.readlines()[-1][:-1]; f.close()
|
|
|
> f = file('.hg/localtags', 'w'); f.write(last); f.close()
|
|
|
> EOF
|
|
|
$ cat .hg/localtags; echo
|
|
|
3ecf002a1c572a2f3bb4e665417e60fca65bbd42 bleah1
|
|
|
$ hg tag -l localnewline
|
|
|
$ cat .hg/localtags; echo
|
|
|
3ecf002a1c572a2f3bb4e665417e60fca65bbd42 bleah1
|
|
|
f68b039e72eacbb2e68b0543e1f6e50990aa2bb5 localnewline
|
|
|
|
|
|
|
|
|
$ python << EOF
|
|
|
> f = file('.hgtags'); last = f.readlines()[-1][:-1]; f.close()
|
|
|
> f = file('.hgtags', 'w'); f.write(last); f.close()
|
|
|
> EOF
|
|
|
$ hg ci -d '1000000 0' -m'broken manual edit of .hgtags'
|
|
|
$ cat .hgtags; echo
|
|
|
0acdaf8983679e0aac16e811534eb49d7ee1f2b4 foobar
|
|
|
$ hg tag -d '1000000 0' newline
|
|
|
$ cat .hgtags; echo
|
|
|
0acdaf8983679e0aac16e811534eb49d7ee1f2b4 foobar
|
|
|
6ae703d793c8b1f097116869275ecd97b2977a2b newline
|
|
|
|
|
|
|
|
|
tag and branch using same name
|
|
|
|
|
|
$ hg branch tag-and-branch-same-name
|
|
|
marked working directory as branch tag-and-branch-same-name
|
|
|
$ hg ci -m"discouraged"
|
|
|
$ hg tag tag-and-branch-same-name
|
|
|
warning: tag tag-and-branch-same-name conflicts with existing branch name
|
|
|
|
|
|
test custom commit messages
|
|
|
|
|
|
$ cat > $HGTMP/editor <<'__EOF__'
|
|
|
> #!/bin/sh
|
|
|
> echo "custom tag message" > "$1"
|
|
|
> echo "second line" >> "$1"
|
|
|
> __EOF__
|
|
|
$ chmod +x "$HGTMP"/editor
|
|
|
$ HGEDITOR="'$HGTMP'"/editor hg tag custom-tag -e
|
|
|
$ hg log -l1 --template "{desc}\n"
|
|
|
custom tag message
|
|
|
second line
|
|
|
|