mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
Xen uses master for QEMU_UPSTREAM_REVISION, and has done for other trees too in the path. Apparently we've never specified a different branch, because the git-clone rune only pulls in the master branch; it does not pull in diverging branches. Fix this by stating which branch/tag is wanted. $TAG is really a committish, and git-clone's -b/--branch takes a committish too. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
28 lines
483 B
Bash
Executable File
28 lines
483 B
Bash
Executable File
#!/bin/sh
|
|
|
|
if test $# -lt 3; then
|
|
echo "Usage: $0 <tree> <tag> <dir>"
|
|
exit 1
|
|
fi
|
|
|
|
TREE=$1
|
|
TAG=$2
|
|
DIR=$3
|
|
|
|
set -e
|
|
|
|
if test \! -d $DIR-remote; then
|
|
rm -rf $DIR-remote $DIR-remote.tmp
|
|
mkdir -p $DIR-remote.tmp; rmdir $DIR-remote.tmp
|
|
$GIT clone -b $TAG $TREE $DIR-remote.tmp
|
|
if test "$TAG" ; then
|
|
cd $DIR-remote.tmp
|
|
$GIT branch -D dummy >/dev/null 2>&1 ||:
|
|
$GIT checkout -b dummy $TAG
|
|
cd -
|
|
fi
|
|
mv $DIR-remote.tmp $DIR-remote
|
|
fi
|
|
rm -f $DIR
|
|
ln -sf $(basename $DIR-remote) $DIR
|