mirror of
https://gitlab.com/xonotic/xonotic
synced 2025-02-08 22:47:33 +00:00
151 lines
4.0 KiB
Plaintext
151 lines
4.0 KiB
Plaintext
|
devsite_url="http://dev.xonotic.org/"
|
||
|
pushsite_url="ssh://xonotic@push.git.xonotic.org/"
|
||
|
httppushsite_url="http://push.git.xonotic.org/login/xonotic/"
|
||
|
gitsite_url="git://git.xonotic.org/xonotic/"
|
||
|
httpsite_url="http://git.xonotic.org/xonotic/"
|
||
|
|
||
|
repos_urls="
|
||
|
. | | master |
|
||
|
data/xonotic-data.pk3dir | | master |
|
||
|
data/xonotic-music.pk3dir | | master |
|
||
|
data/xonotic-nexcompat.pk3dir | | master | no
|
||
|
darkplaces | | div0-stable | svn
|
||
|
netradiant | | master |
|
||
|
div0-gittools | | master | no
|
||
|
d0_blind_id | | master |
|
||
|
data/xonotic-maps.pk3dir | | master |
|
||
|
mediasource | | master | no
|
||
|
fteqcc | | xonotic-stable | noautocrlf
|
||
|
"
|
||
|
# todo: in darkplaces, change repobranch to div0-stable
|
||
|
|
||
|
repos=`$ECHO "$repos_urls" | grep . | cut -d '|' -f 1 | tr -d ' '`
|
||
|
|
||
|
base=`git config remote.origin.url`
|
||
|
case "$base" in
|
||
|
*/xonotic.git)
|
||
|
base=${base%xonotic.git}
|
||
|
;;
|
||
|
*)
|
||
|
$ECHO "The main repo is not xonotic.git, what have you done?"
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
pushbase=`git config remote.origin.pushurl || true`
|
||
|
case "$pushbase" in
|
||
|
*/xonotic.git)
|
||
|
pushbase=${pushbase%xonotic.git}
|
||
|
;;
|
||
|
'')
|
||
|
;;
|
||
|
*)
|
||
|
$ECHO "The main repo is not xonotic.git, what have you done?"
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
repourl()
|
||
|
{
|
||
|
repo_t=`$ECHO "$repos_urls" | grep "^$1 " | cut -d '|' -f 2 | tr -d ' '`
|
||
|
if [ -n "$repo_t" ]; then
|
||
|
case "$repo_t" in
|
||
|
*://*)
|
||
|
$ECHO "$repo_t"
|
||
|
;;
|
||
|
*)
|
||
|
$ECHO "$base$repo_t"
|
||
|
;;
|
||
|
esac
|
||
|
else
|
||
|
if [ x"$1" = x"." ]; then
|
||
|
$ECHO "$base""xonotic.git"
|
||
|
else
|
||
|
$ECHO "$base${1##*/}.git"
|
||
|
fi
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
repopushurl()
|
||
|
{
|
||
|
[ -n "$pushbase" ] || return 0
|
||
|
repo_t=`$ECHO "$repos_urls" | grep "^$1 " | cut -d '|' -f 2 | tr -d ' '`
|
||
|
if [ -n "$repo_t" ]; then
|
||
|
case "$repo_t" in
|
||
|
*://*)
|
||
|
;;
|
||
|
*)
|
||
|
$ECHO "$pushbase$repo_t"
|
||
|
;;
|
||
|
esac
|
||
|
else
|
||
|
if [ x"$1" = x"." ]; then
|
||
|
$ECHO "$pushbase""xonotic.git"
|
||
|
else
|
||
|
$ECHO "$pushbase${1##*/}.git"
|
||
|
fi
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
repobranch()
|
||
|
{
|
||
|
repo_t=`$ECHO "$repos_urls" | grep "^$1 " | cut -d '|' -f 3 | tr -d ' '`
|
||
|
if [ -n "$repo_t" ]; then
|
||
|
$ECHO "$repo_t"
|
||
|
else
|
||
|
$ECHO "master"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
repoflags()
|
||
|
{
|
||
|
$ECHO "$repos_urls" | grep "^$1 " | cut -d '|' -f 4 | tr -d ' '
|
||
|
}
|
||
|
|
||
|
listrepos()
|
||
|
{
|
||
|
for d in $repos; do
|
||
|
p="${d%dir}"
|
||
|
f="`repoflags "$d"`"
|
||
|
# if we have .no file, skip
|
||
|
if [ -f "$d.no" ]; then
|
||
|
msg "Repository $d disabled by a .no file, delete $d.no to enable"
|
||
|
continue
|
||
|
fi
|
||
|
# if .yes file exists, always keep it
|
||
|
if [ -f "$d.yes" ]; then
|
||
|
msg "Repository $d enabled by a .yes file"
|
||
|
$ECHO "$d"
|
||
|
continue
|
||
|
fi
|
||
|
# remove broken clones so they don't mess up stuff
|
||
|
if [ x"$d" != x"." ] && [ -d "$d" ] && ! [ -d "$d/.git" ]; then
|
||
|
msg "$d exists but has no .git subdir. Probably a broken clone. Deleting."
|
||
|
verbose rm -rf "$d"
|
||
|
continue
|
||
|
fi
|
||
|
# if we have the dir, always keep it
|
||
|
if [ -d "$d" ]; then
|
||
|
msg "Repository $d enabled because it already exists"
|
||
|
$ECHO "$d"
|
||
|
continue
|
||
|
fi
|
||
|
# if we have matching pk3, skip
|
||
|
if [ x"$p" != x"$d" ] && [ -f "$p" ]; then
|
||
|
msg "Repository $d disabled by matching .pk3 file, delete $p or create $d.yes to enable"
|
||
|
continue
|
||
|
fi
|
||
|
# if "no" flag is set, skip
|
||
|
case ",$f," in
|
||
|
*,no,*)
|
||
|
msg "Repository $d disabled by default, create $d.yes to enable"
|
||
|
continue
|
||
|
;;
|
||
|
esac
|
||
|
# default: enable
|
||
|
msg "Repository $d enabled by default"
|
||
|
$ECHO "$d"
|
||
|
done
|
||
|
}
|
||
|
|
||
|
repos=`listrepos`
|