#1145567 Git component handling confused by configured remotes

Package:
devscripts
Source:
devscripts
Description:
scripts to make the life of a Debian Package maintainer easier
Submitter:
Simon Richter
Date:
2026-08-25 16:05:02 UTC
Severity:
normal
#1145567#5
Date:
2026-08-25 16:03:34 UTC
From:
To:
Hi,

this looks somewhat similar to #1145549, but no uscan submodule handling is
involved here, so it's a bit different.

In prjxray, the main program and the generated files move independently, no
submodules are involved.

The watch file uses two components for that:

Version: 5
Version-Schema: group

Mode: git
Source: https://github.com/f4pga/prjxray.git
#Matching-Pattern: refs/tags/v(.+)
Matching-Pattern: heads/master
Git-Pretty: describe
Git-Modules: all
Compression: xz
Version-Mangle: s/\.([0-9]+)\.(g[0-9a-fA-F]{8})$/+git$1.$2/
Filename-Mangle: s/^(@PACKAGE@-)v/$1/

Mode: git
Component: database
Source: https://github.com/f4pga/prjxray-db.git
Matching-Pattern: HEAD
Git-Pretty: db%cd.g%h
Compression: xz

If the main repository is available as a remote in the current working
directory, but the database repository isn't, this falls over with:

$ git clone https://salsa.debian.org/electronics-team/prjxray.git
$ cd prjxray
$ git remote add tools https://github.com/f4pga/prjxray.git
$ git fetch tools
$ uscan
fatal: Not a valid object name tools/HEAD
uscan: error: git describe --tags tools/HEAD subprocess returned exit status 128

Fixing the immediate problem

$ git remote set-head tools master

then leads to a new issue

$ uscan
Newest version of database on remote site is db20260725.gf8826f35, local version is db20211214.g0a0added
 => Newer package available from:
        => https://github.com/f4pga/prjxray-db.git HEAD
Successfully repacked ../prjxray-0.1+git3356.gc9f02d85.tar.xz as ../prjxray_0.1+git3356.gc9f02d85.orig.tar.xz, deleting 18 files from it.
Successfully symlinked ../prjxray-db20260725.gf8826f35.tar.xz to ../prjxray_db20260725.gf8826f35.orig-database.tar.xz.
uscan warn: rename ../prjxray_0.1+git3356.gc9f02d85.orig.tar.xz to ../prjxray_0.1+git3356.gc9f02d85+~db20260725.gf8826f35.orig.tar.xz
uscan warn: rename ../prjxray_db20260725.gf8826f35.orig-database.tar.xz to ../prjxray_0.1+git3356.gc9f02d85+~db20260725.gf8826f35.orig-database.tar.xz

f8826f35 here refers to

commit f8826f35e8bee213970b106a927b1b5213eed697 (HEAD -> debian/latest, origin/debian/latest, origin/HEAD)

so the database subcomponent is initialized from the Debian packaging
repository on salsa, not the actual database component.

Also adding the database as a remote

$ git remote add database https://github.com/f4pga/prjxray-db.git
$ uscan
fatal: ambiguous argument 'database/HEAD': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
uscan: error: git log -1 --date=format-local:%Y%m%d --no-show-signature --pretty=db%cd.g%h database/HEAD subprocess returned exit status 128

This remains the same even if I switch the "HEAD" reference in the watch
file to "refs/master". Only

$ git remote set-head database master

fixes that -- so in summary, for this watch file to work, the URL of
upstream's git server either may not be configured as a remote at all, or
*all* the upstream git URLs must be configured as remotes and have had
their HEAD revision set up.

   Simon

- -- Package-specific info:

- --- /etc/devscripts.conf ---
Empty.

- --- ~/.devscripts ---
Not present

- -- System Information:
Debian Release: 13.6
  APT prefers stable-security
  APT policy: (990, 'stable-security'), (990, 'stable'), (500, 'stable-debug')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, riscv64

Kernel: Linux 7.1.8+deb13-amd64 (SMP w/8 CPU threads; PREEMPT)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages devscripts depends on:
ii  dpkg-dev                 1.22.22
ii  file                     1:5.46-5
ii  gpg                      2.4.7-21+deb13u1+b4
ii  gpg-agent                2.4.7-21+deb13u1+b4
ii  gpgv                     2.4.7-21+deb13u1+b4
ii  libconfig-inifiles-perl  3.000003-3+deb13u1
ii  libdpkg-perl             1.22.22
ii  libfile-dirlist-perl     0.05-3
ii  libfile-homedir-perl     1.006-2
ii  libfile-touch-perl       0.12-2
ii  libio-string-perl        1.08-4
ii  libmoo-perl              2.005005-1
ii  libwww-perl              6.78-1
ii  libyaml-libyaml-perl     0.903.0+ds-1
ii  patchutils               0.4.2-1
ii  perl                     5.40.1-6
ii  python3                  3.13.5-1
ii  sensible-utils           0.0.25
ii  wdiff                    1.2.2-9

Versions of packages devscripts recommends:
ii  apt                         3.0.3
ii  curl                        8.14.1-2+deb13u4
ii  dctrl-tools                 2.24-3+b1
ii  debian-keyring              2025.07.26
ii  debian-tag2upload-keyring   1.1
ii  diffstat                    1.67-1
ii  dput-ng [dput]              1.44
ii  equivs                      2.3.2
ii  git-debpush                 16.7~bpo13+1
ii  libdistro-info-perl         1.13
ii  libencode-locale-perl       1.05-3
ii  libgitlab-api-v4-perl       0.27-1
ii  libjson-perl                4.10000-1
ii  liblwp-protocol-https-perl  6.14-1
ii  libmetacpan-client-perl     2.033000-1
ii  libsoap-lite-perl           1.27-3
ii  libstring-shellquote-perl   1.04-3
ii  liburi-perl                 5.30-1
ii  licensecheck                3.3.9-1
ii  lintian                     2.122.0
ii  lzip                        1.25-3
ii  man-db                      2.13.1-1
ii  mmdebstrap                  1.5.7-1+deb13u1
ii  patch                       2.8-2
ii  pristine-tar                1.50+nmu2
ii  python3-apt                 3.0.0
ii  python3-debian              1.0.1
ii  python3-magic               2:0.4.27-3
ii  python3-requests            2.32.3+dfsg-5+deb13u1
ii  python3-unidiff             0.7.5-2
ii  python3-xdg                 0.28-2
ii  sbuild                      0.89.3+deb13u4
ii  strace                      6.13+ds-1
ii  unzip                       6.0-29+deb13u1
ii  wget                        1.25.0-2
ii  xz-utils                    5.8.1-1+deb13u1

Versions of packages devscripts suggests:
pn  adequate                          <none>
ii  at                                3.2.5-2.2
ii  autopkgtest                       5.49
pn  bls-standalone                    <none>
pn  bsd-mailx | mailx                 <none>
ii  build-essential                   12.12
pn  check-all-the-things              <none>
ii  debhelper                         13.24.2
pn  diffoscope                        <none>
pn  disorderfs                        <none>
ii  docker.io                         26.1.5+dfsg1-9+deb13u1
pn  dose-extra                        <none>
pn  duck                              <none>
pn  elpa-devscripts                   <none>
pn  faketime                          <none>
ii  gnuplot-qt [gnuplot]              6.0.2+dfsg1-1
pn  how-can-i-help                    <none>
ii  libauthen-sasl-perl               2.1700-1
pn  libdbd-pg-perl                    <none>
pn  libterm-size-perl                 <none>
ii  libtimedate-perl                  2.3300-2
ii  msmtp-mta [mail-transport-agent]  1.8.28-3
ii  mutt                              2.2.13-1+deb13u1
ii  openssh-client [ssh-client]       1:10.0p1-7+deb13u4
pn  piuparts                          <none>
pn  postgresql-client                 <none>
pn  pristine-lfs                      <none>
ii  python3-debianbts                 4.1.1
ii  python3-pycurl                    7.45.6-1
ii  quilt                             0.68-1
pn  ratt                              <none>
pn  reprotest                         <none>
pn  svn-buildpackage                  <none>
ii  w3m                               0.5.3+git20230121-2.1

- -- no debconf information
-----BEGIN PGP SIGNATURE-----

iQFDBAEBCgAtFiEEtjuqOJSXmNjSiX3Tfr04e7CZCBEFAmqNvNYPHHNqckBkZWJp
YW4ub3JnAAoJEH69OHuwmQgR+isH/1MXmBHCVGsrQkLx3ep31O2sW2+cp/MzxeQJ
txU71jF5WoA0rEfcgx0QVGXyr5e6cQtnTqVis+QwXFueUapYNHDXqsE8S/YKpYXo
NC+zqni03ZTHnpu02rxB5fdeDvpOOHs3EuLTpo/e9sI/x8NTFP7dE0QiE4u8h7u/
/1ps+WiJWeEF/ae50nh+ihuPCIRM1bygnJxYpVRWjiDV33UL2TuozBp95THyWYOX
vu2c4F2RSN3dRvKe7hhYB6WOJkzTZQ3IXn4izLq8TqWBljANtoE104m1rIlROmpN
mCm9nfm/+c2OZuYbPJn+2N5MFnk2S59lXR4a4qWdyoLD5I1OfYw=
=EQKT
-----END PGP SIGNATURE-----