mirror of
https://github.com/facebook/sapling.git
synced 2024-10-08 07:49:11 +03:00
48773bdeed
f02da4369319 assumed that walkchangerevs called prep with all relevant matched filenames, but actually it only contains the names of files changed in the relevant changeset. That meant that log diff/stat of merges missed the diff for files only changed in the other branch. This is a minimal fix for making sure we only use fns when we are following and thus will have problems with merges anyway ...
220 lines
3.3 KiB
Bash
Executable File
220 lines
3.3 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
hg init a
|
|
|
|
cd a
|
|
echo a > a
|
|
hg ci -Ama -d '1 0'
|
|
|
|
hg cp a b
|
|
hg ci -mb -d '2 0'
|
|
|
|
mkdir dir
|
|
hg mv b dir
|
|
hg ci -mc -d '3 0'
|
|
|
|
hg mv a b
|
|
echo a > d
|
|
hg add d
|
|
hg ci -md -d '4 0'
|
|
|
|
hg mv dir/b e
|
|
hg ci -me -d '5 0'
|
|
|
|
hg log a
|
|
echo % -f, directory
|
|
hg log -f dir
|
|
echo % -f, but no args
|
|
hg log -f
|
|
echo % one rename
|
|
hg log -vf a
|
|
echo % many renames
|
|
hg log -vf e
|
|
|
|
echo % log -pf dir/b
|
|
hg log -pf dir/b
|
|
echo % log -vf dir/b
|
|
hg log -vf dir/b
|
|
|
|
echo '% log copies with --copies'
|
|
hg log -vC --template '{rev} {file_copies}\n'
|
|
echo '% log copies switch without --copies, with old filecopy template'
|
|
hg log -v --template '{rev} {file_copies_switch%filecopy}\n'
|
|
echo '% log copies switch with --copies'
|
|
hg log -vC --template '{rev} {file_copies_switch}\n'
|
|
|
|
echo '% log copies with hardcoded style and with --style=default'
|
|
hg log -vC -r4
|
|
hg log -vC -r4 --style=default
|
|
|
|
echo % log copies, non-linear manifest
|
|
hg up -C 3
|
|
hg mv dir/b e
|
|
echo foo > foo
|
|
hg ci -Ame2 -d '6 0'
|
|
hg log -v --template '{rev} {file_copies}\n' -r 5
|
|
|
|
echo % log copies, execute bit set
|
|
chmod +x e
|
|
hg ci -me3 -d '7 0'
|
|
hg log -v --template '{rev} {file_copies}\n' -r 6
|
|
|
|
echo '% log -p d'
|
|
hg log -pv d
|
|
|
|
# log --follow tests
|
|
hg init ../follow
|
|
cd ../follow
|
|
|
|
echo base > base
|
|
hg ci -Ambase -d '1 0'
|
|
|
|
echo r1 >> base
|
|
hg ci -Amr1 -d '1 0'
|
|
echo r2 >> base
|
|
hg ci -Amr2 -d '1 0'
|
|
|
|
hg up -C 1
|
|
echo b1 > b1
|
|
hg ci -Amb1 -d '1 0'
|
|
|
|
echo % log -f
|
|
hg log -f
|
|
|
|
hg up -C 0
|
|
echo b2 > b2
|
|
hg ci -Amb2 -d '1 0'
|
|
|
|
echo % log -f -r 1:tip
|
|
hg log -f -r 1:tip
|
|
|
|
hg up -C 3
|
|
hg merge tip
|
|
|
|
echo % log -r . with two parents
|
|
hg log -r .
|
|
|
|
hg ci -mm12 -d '1 0'
|
|
|
|
echo % log -r . with one parent
|
|
hg log -r .
|
|
|
|
echo postm >> b1
|
|
hg ci -Amb1.1 -d'1 0'
|
|
|
|
echo % log --follow-first
|
|
hg log --follow-first
|
|
|
|
echo % log -P 2
|
|
hg log -P 2
|
|
|
|
echo '% log -r tip -p --git'
|
|
hg log -r tip -p --git
|
|
|
|
echo '% log -r ""'
|
|
hg log -r ''
|
|
|
|
echo '% log -r <some unknown node id>'
|
|
hg log -r 1000000000000000000000000000000000000000
|
|
|
|
echo '% log -k r1'
|
|
hg log -k r1
|
|
|
|
echo '% log -d -1'
|
|
hg log -d -1
|
|
|
|
echo '% log -p -l2 --color=always'
|
|
hg --config extensions.color= --config color.mode=ansi \
|
|
log -p -l2 --color=always
|
|
|
|
echo '% log -r tip --stat'
|
|
hg log -r tip --stat
|
|
|
|
cd ..
|
|
|
|
hg init usertest
|
|
cd usertest
|
|
|
|
echo a > a
|
|
hg ci -A -m "a" -u "User One <user1@example.org>"
|
|
echo b > b
|
|
hg ci -A -m "b" -u "User Two <user2@example.org>"
|
|
|
|
hg log -u "User One <user1@example.org>"
|
|
hg log -u "user1" -u "user2"
|
|
hg log -u "user3"
|
|
|
|
cd ..
|
|
|
|
hg init branches
|
|
cd branches
|
|
|
|
echo a > a
|
|
hg ci -A -m "commit on default"
|
|
hg branch test
|
|
echo b > b
|
|
hg ci -A -m "commit on test"
|
|
|
|
hg up default
|
|
echo c > c
|
|
hg ci -A -m "commit on default"
|
|
hg up test
|
|
echo c > c
|
|
hg ci -A -m "commit on test"
|
|
|
|
echo '% log -b default'
|
|
hg log -b default
|
|
|
|
echo '% log -b test'
|
|
hg log -b test
|
|
|
|
echo '% log -b dummy'
|
|
hg log -b dummy
|
|
|
|
echo '% log -b .'
|
|
hg log -b .
|
|
|
|
echo '% log -b default -b test'
|
|
hg log -b default -b test
|
|
|
|
echo '% log -b default -b .'
|
|
hg log -b default -b .
|
|
|
|
echo '% log -b . -b test'
|
|
hg log -b . -b test
|
|
|
|
echo '% log -b 2'
|
|
hg log -b 2
|
|
|
|
echo '% log -p --cwd dir (in subdir)'
|
|
mkdir dir
|
|
hg log -p --cwd dir
|
|
|
|
echo '% log -p -R repo'
|
|
cd dir
|
|
hg log -p -R .. ../a
|
|
|
|
cd ..
|
|
|
|
echo '% issue2383'
|
|
|
|
hg init issue2383
|
|
cd issue2383
|
|
echo a > a
|
|
hg ci -Am0
|
|
echo b > b
|
|
hg ci -Am1
|
|
hg co 0
|
|
echo b > a
|
|
hg ci -m2
|
|
hg merge
|
|
echo c > a
|
|
hg ci -m3
|
|
echo
|
|
echo % diff
|
|
hg diff --rev 2:3
|
|
echo
|
|
echo % log
|
|
hg log -vpr 3
|
|
cd ..
|