##// END OF EJS Templates
add cmdutil.remoteui...
add cmdutil.remoteui remoteui sorts out the issues of getting ssh config options from the local repo into the remote one while not copying other options like hooks.

File last commit:

r7718:6fa7b6fb default
r8188:f3abe032 default
Show More
test-record
298 lines | 3.5 KiB | text/plain | TextLexer
Bryan O'Sullivan
Add record extension, giving darcs-like interactive hunk picking
r5037 #!/bin/sh
echo "[ui]" >> $HGRCPATH
echo "interactive=true" >> $HGRCPATH
echo "[extensions]" >> $HGRCPATH
echo "record=" >> $HGRCPATH
echo % help
hg help record
hg init a
cd a
echo % select no files
touch empty-rw
hg add empty-rw
hg record empty-rw<<EOF
n
EOF
echo; hg tip -p
echo % select files but no hunks
hg record empty-rw<<EOF
y
n
EOF
echo; hg tip -p
echo % record empty file
hg record -d '0 0' -m empty empty-rw<<EOF
y
y
EOF
echo; hg tip -p
echo % rename empty file
hg mv empty-rw empty-rename
hg record -d '1 0' -m rename<<EOF
y
EOF
echo; hg tip -p
echo % copy empty file
hg cp empty-rename empty-copy
hg record -d '2 0' -m copy<<EOF
y
EOF
echo; hg tip -p
echo % delete empty file
hg rm empty-copy
hg record -d '3 0' -m delete<<EOF
y
EOF
echo; hg tip -p
echo % add binary file
hg bundle --base -2 tip.bundle
hg add tip.bundle
hg record -d '4 0' -m binary<<EOF
y
EOF
echo; hg tip -p
echo % change binary file
hg bundle --base -2 tip.bundle
hg record -d '5 0' -m binary-change<<EOF
y
EOF
echo; hg tip -p
echo % rename and change binary file
hg mv tip.bundle top.bundle
hg bundle --base -2 top.bundle
hg record -d '6 0' -m binary-change-rename<<EOF
y
EOF
echo; hg tip -p
echo % add plain file
for i in 1 2 3 4 5 6 7 8 9 10; do
echo $i >> plain
done
hg add plain
hg record -d '7 0' -m plain plain<<EOF
y
y
EOF
echo; hg tip -p
echo % modify end of plain file
echo 11 >> plain
hg record -d '8 0' -m end plain <<EOF
y
y
EOF
echo % modify end of plain file, no EOL
hg tip --template '{node}' >> plain
hg record -d '9 0' -m noeol plain <<EOF
y
y
EOF
echo % modify end of plain file, add EOL
echo >> plain
hg record -d '10 0' -m eol plain <<EOF
y
y
y
EOF
echo % modify beginning, trim end, record both
rm plain
for i in 2 2 3 4 5 6 7 8 9 10; do
echo $i >> plain
done
hg record -d '10 0' -m begin-and-end plain <<EOF
y
y
y
EOF
echo; hg tip -p
echo % trim beginning, modify end
rm plain
for i in 4 5 6 7 8 9 10.new; do
echo $i >> plain
done
echo % record end
hg record -d '11 0' -m end-only plain <<EOF
y
n
y
EOF
echo; hg tip -p
echo % record beginning
hg record -d '12 0' -m begin-only plain <<EOF
y
y
EOF
echo; hg tip -p
echo % add to beginning, trim from end
rm plain
for i in 1 2 3 4 5 6 7 8 9; do
echo $i >> plain
done
echo % record end
hg record --traceback -d '13 0' -m end-again plain<<EOF
y
n
y
EOF
echo % add to beginning, middle, end
rm plain
for i in 1 2 3 4 5 5.new 5.reallynew 6 7 8 9 10 11; do
echo $i >> plain
done
echo % record beginning, middle
hg record -d '14 0' -m middle-only plain <<EOF
y
y
y
n
EOF
echo; hg tip -p
echo % record end
hg record -d '15 0' -m end-only plain <<EOF
y
y
EOF
echo; hg tip -p
Bryan O'Sullivan
record: work properly if invoked in a subdirectory
r5128
mkdir subdir
cd subdir
echo a > a
hg ci -d '16 0' -Amsubdir
echo a >> a
hg record -d '16 0' -m subdir-change a <<EOF
y
y
EOF
echo; hg tip -p
Bryan O'Sullivan
record: improve docs, improve prompts
r5154
echo a > f1
echo b > f2
hg add f1 f2
hg ci -mz -d '17 0'
echo a >> f1
echo b >> f2
echo % help, quit
hg record <<EOF
?
q
EOF
echo % skip
hg record <<EOF
s
EOF
echo % no
hg record <<EOF
n
EOF
echo % f, quit
hg record <<EOF
f
q
EOF
echo % s, all
hg record -d '18 0' -mx <<EOF
s
a
EOF
echo; hg tip -p
echo % f
hg record -d '19 0' -my <<EOF
f
EOF
echo; hg tip -p
Steve Borho
record: do not lose permission changes on commit
r7718
echo % preserve chmod +x
chmod +x f1
echo a >> f1
hg record -d '20 0' -mz <<EOF
y
y
y
EOF
echo; hg tip --config diff.git=True -p
echo % preserve execute permission on original
echo b >> f1
hg record -d '21 0' -maa <<EOF
y
y
y
EOF
echo; hg tip --config diff.git=True -p
echo % preserve chmod -x
chmod -x f1
echo c >> f1
hg record -d '22 0' -mab <<EOF
y
y
y
EOF
echo; hg tip --config diff.git=True -p