mirror of
https://github.com/facebook/sapling.git
synced 2024-10-07 23:38:50 +03:00
7563660d88
Fixing issue179. The algorithm checks if there not more new heads on the remote side than heads which become non-heads due to getting children. Pushing this repo: m /\ 3 3a| |/ / 2 2a |/ 1 to a repo only having 1, 2 and 3 didn't abort requiring --force before. Added test cases for this and some doc strings for used methods.
56 lines
677 B
Bash
Executable File
56 lines
677 B
Bash
Executable File
#!/bin/sh
|
|
|
|
mkdir a
|
|
cd a
|
|
hg init
|
|
echo foo > t1
|
|
hg add t1
|
|
hg commit -m "1" -d "1000000 0"
|
|
|
|
cd ..
|
|
hg clone a b
|
|
|
|
cd a
|
|
echo foo > t2
|
|
hg add t2
|
|
hg commit -m "2" -d "1000000 0"
|
|
|
|
cd ../b
|
|
echo foo > t3
|
|
hg add t3
|
|
hg commit -m "3" -d "1000000 0"
|
|
|
|
hg push ../a
|
|
hg pull ../a
|
|
hg push ../a
|
|
hg up -m
|
|
hg commit -m "4" -d "1000000 0"
|
|
hg push ../a
|
|
cd ..
|
|
|
|
hg init c
|
|
cd c
|
|
for i in 0 1 2; do
|
|
echo $i >> foo
|
|
hg ci -Am $i -d "1000000 0"
|
|
done
|
|
cd ..
|
|
|
|
hg clone c d
|
|
cd d
|
|
for i in 0 1; do
|
|
hg co -C $i
|
|
echo d-$i >> foo
|
|
hg ci -m d-$i -d "1000000 0"
|
|
done
|
|
|
|
HGMERGE=true hg co -m 3
|
|
hg ci -m c-d -d "1000000 0"
|
|
|
|
hg push ../c
|
|
hg push -r 2 ../c
|
|
hg push -r 3 -r 4 ../c
|
|
hg push -r 5 ../c
|
|
|
|
exit 0
|