Package: git-buildpackage Version: 0.9.7 Severity: normal Hi,
I am attempting to use git-buildpackage and pristine-tar with a package which uses multiple components. Unfortunately if I clone the repository, pristine-tar fails to generate the main tarball: > $ pristine-tar checkout ffdiaporama_2.1+dfsg.orig-rsc.tar.gz > pristine-tar: successfully generated ffdiaporama_2.1+dfsg.orig-rsc.tar.gz > $ pristine-tar checkout ffdiaporama_2.1+dfsg.orig.tar.gz > fatal: ambiguous argument '81c0361de57e9e6c6dc8bf6cd6e9ba6697fb6e53^{tree}': > unknown revision or path not in the working tree. > Use '--' to separate paths from revisions, like this: > 'git <command> [<revision>...] -- [<file>...]' > fatal: Not a valid object name > tar: This does not look like a tar archive > tar: Exiting with failure status due to previous errors > pristine-tar: command failed: git archive --format=tar > 81c0361de57e9e6c6dc8bf6cd6e9ba6697fb6e53\^\{tree\} | (cd > '/tmp/pristine-tar.KmsGn7eSaa' && tar x) The mentioned tree (81c0361de57e9e6c6dc8bf6cd6e9ba6697fb6e53) does not exist in the cloned repository but does in the original repository. I found this which looks to me exactly the same situation I am in, but I could not find a Debian bug so I am filing one now: https://lists.sigxcpu.org/pipermail/git-buildpackage/2017-June/000223.html The gist is that pristine-tar is given a tree object for the main tarball without the extra component tarballs, but this tree object is never present in the upstream branch and is unreachable from any tags. I guess the easiest solution is to pass the final upstream tree (with all the components) to pristine-tar when generating the main tarball. This might give bigger deltas, but when I tested it with ffdiaporama the delta was only a few hundred bytes larger so maybe it's not a big problem. Thanks, James
signature.asc
Description: OpenPGP digital signature