view tests/test-convert-tagsbranch-topology @ 10014:54cd28258ea7

status: add the --change option to display files changed in a revision This option is similar to the one already used for the diff command. Unfortunately, the c and C short option are already used for status, so there is no corresponding short option. However, there is no short option for --rev either, so that's consistent.
author Gilles Moris <gilles.moris@free.fr>
date Mon, 30 Nov 2009 23:51:06 +0100
parents d1b135f2f415
children
line wrap: on
line source

#!/bin/sh

"$TESTDIR/hghave" git || exit 80

echo "[extensions]" >> $HGRCPATH
echo "convert=" >> $HGRCPATH
echo 'hgext.graphlog =' >> $HGRCPATH
echo '[convert]' >> $HGRCPATH
echo 'hg.usebranchnames = True' >> $HGRCPATH
echo 'hg.tagsbranch = tags-update' >> $HGRCPATH

GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME
GIT_AUTHOR_EMAIL='test@example.org'; export GIT_AUTHOR_EMAIL
GIT_AUTHOR_DATE="2007-01-01 00:00:00 +0000"; export GIT_AUTHOR_DATE
GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"; export GIT_COMMITTER_NAME
GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"; export GIT_COMMITTER_EMAIL
GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; export GIT_COMMITTER_DATE

count=10
action()
{
    GIT_AUTHOR_DATE="2007-01-01 00:00:$count +0000"
    GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"
    git "$@" >/dev/null 2>/dev/null || echo "git command error"
    count=`expr $count + 1`
}

glog()
{
    hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@"
}

convertrepo()
{
    hg convert --datesort git-repo hg-repo
}

# Build a GIT repo with at least 1 tag
mkdir git-repo
cd git-repo
git init >/dev/null 2>&1
echo a > a
git add a
action commit -m "rev1"
action tag -m "tag1" tag1
cd ..

# Do a first conversion
convertrepo

# Simulate upstream  updates after first conversion
cd git-repo
echo b > a
git add a
action commit -m "rev2"
action tag -m "tag2" tag2
cd ..

# Perform an incremental conversion
convertrepo

# Print the log
cd hg-repo
glog