mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 09:17:30 +03:00
64 lines
1.3 KiB
Plaintext
64 lines
1.3 KiB
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
# Fails for some reason, need to investigate
|
||
|
# "$TESTDIR/hghave" git || exit 80
|
||
|
|
||
|
# bail if the user does not have dulwich
|
||
|
python -c 'import dulwich, dulwich.repo' || exit 80
|
||
|
|
||
|
# bail early if the user is already running git-daemon
|
||
|
echo hi | nc localhost 9418 2>/dev/null && exit 80
|
||
|
|
||
|
echo "[extensions]" >> $HGRCPATH
|
||
|
echo "hggit=$(echo $(dirname $(dirname $0)))/hggit" >> $HGRCPATH
|
||
|
echo 'hgext.graphlog =' >> $HGRCPATH
|
||
|
echo 'hgext.bookmarks =' >> $HGRCPATH
|
||
|
|
||
|
hg init hgrepo1
|
||
|
cd hgrepo1
|
||
|
echo A > afile
|
||
|
hg add afile
|
||
|
hg ci -m "origin"
|
||
|
|
||
|
echo B > afile
|
||
|
hg ci -m "A->B"
|
||
|
|
||
|
echo C > afile
|
||
|
hg ci -m "B->C"
|
||
|
|
||
|
hg up -r0
|
||
|
echo C > afile
|
||
|
hg ci -m "A->C"
|
||
|
|
||
|
hg merge -r2
|
||
|
hg ci -m "merge"
|
||
|
|
||
|
hg log --graph --style compact | sed 's/\[.*\]//g'
|
||
|
|
||
|
cd ..
|
||
|
|
||
|
mkdir gitrepo
|
||
|
cd gitrepo
|
||
|
git init --bare | python -c "import sys; print sys.stdin.read().replace('$(dirname $(pwd))/', '')"
|
||
|
|
||
|
# dulwich does not presently support local git repos, workaround
|
||
|
cd ..
|
||
|
git daemon --base-path="$(pwd)"\
|
||
|
--listen=localhost\
|
||
|
--export-all\
|
||
|
--pid-file="$DAEMON_PIDS" \
|
||
|
--detach --reuseaddr \
|
||
|
--enable=receive-pack
|
||
|
|
||
|
cd hgrepo1
|
||
|
hg bookmark -r4 master
|
||
|
hg push -r master git://localhost/gitrepo
|
||
|
cd ..
|
||
|
|
||
|
hg clone git://localhost/gitrepo hgrepo2 | grep -v '^updating'
|
||
|
cd hgrepo2
|
||
|
echo % expect the same revision ids as above
|
||
|
hg log --graph --style compact | sed 's/\[.*\]//g'
|
||
|
|
||
|
cd ..
|