##// END OF EJS Templates
fetch: switch the default parent used for a merge...
fetch: switch the default parent used for a merge This treats newly pulled changes as authoritative, and local changes as the "satellite" changes. The prior default behaviour is still available, via the --switch-parent option.

File last commit:

r6206:0b6f1249 default
r6206:0b6f1249 default
Show More
test-fetch
52 lines | 1013 B | text/plain | TextLexer
#!/bin/sh
echo "[extensions]" >> $HGRCPATH
echo "fetch=" >> $HGRCPATH
hg init a
echo a > a/a
hg --cwd a commit -d '1 0' -Ama
hg clone a b
hg clone a c
echo b > a/b
hg --cwd a commit -d '2 0' -Amb
hg --cwd a parents -q
echo % should pull one change
hg --cwd b fetch ../a
hg --cwd b parents -q
echo c > c/c
hg --cwd c commit -d '3 0' -Amc
hg clone c d
hg clone c e
echo % should merge c into a
hg --cwd c fetch -d '4 0' -m 'automated merge' ../a
ls c
hg --cwd a serve -a localhost -p $HGPORT -d --pid-file=hg.pid
cat a/hg.pid >> "$DAEMON_PIDS"
echo '% fetch over http, no auth'
hg --cwd d fetch -d '5 0' http://localhost:$HGPORT/
hg --cwd d tip --template '{desc}\n'
echo '% fetch over http with auth (should be hidden in desc)'
hg --cwd e fetch -d '5 0' http://user:password@localhost:$HGPORT/
hg --cwd e tip --template '{desc}\n'
hg clone a f
hg clone a g
echo f > f/f
hg --cwd f ci -d '6 0' -Amf
echo g > g/g
hg --cwd g ci -d '6 0' -Amg
echo % should merge f into g
hg --cwd g fetch --switch ../f