#!/usr/bin/env sh
# Create some files
mkdir repo1
cd repo1
mkdir -p d1 d2 d3
touch d1/f{1,2}
echo abc > d2/sometext
echo 123 > d3/somenumbers
# Make it a mercurial repository
hg init
hg add
hg com -m "Created"
# Converting/importing/partially cloning repo1
cd ..
cat > f <<EOF
exclude *
include d1
EOF
hg convert --filemap fileset repo1/ repo2
cd repo2
hg update
# Making updates on converted repository
echo "some content on d1/f1" > d1/f1
hg com -m "Updated d1/f1"
# Pushing from repo2 to repo1
hg push ../repo1 -f # Note the -f flag
cd ../repo1
echo "HEADS ON repo1 AFTER FORCED PUSH FROM repo2"
hg heads
# Merging updates from repo2 into repo1
hg merge
hg com -m merging
echo "HEADS ON repo1 AFTER MERGE OF PUSH FROM repo2"
hg heads
echo "GRAPHIC LOG"
hg glog