makepkg: correctly handle hg sources with updates on a non-default branch

The "tip" ref actually signifies the most recently updated branch. hg
does not support a default branch named anything other than "default",
except by creating a "@" bookmark. The correct way to explicitly update
to the default clone ref, is therefore to use one of these, rather than
"tip".

Fixes FS#62092

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
Eli Schwartz 2019-03-31 12:15:40 -04:00 committed by Allan McRae
parent 915ac9ff9b
commit a8b3d1a62a

View file

@ -79,7 +79,11 @@ extract_hg() {
msg2 "$(gettext "Creating working copy of %s %s repo...")" "${repo}" "hg"
pushd "$srcdir" &>/dev/null
local ref=tip
local ref=default
# Is the repository configured to checkout some ref other than 'default'?
if hg identify -r @ "$dir" >/dev/null 2>&1; then
ref=@
fi
if [[ -n $fragment ]]; then
case ${fragment%%=*} in
branch|revision|tag)