Package: git-buildpackage Version: 0.9.8 Severity: normal Dear gbp maintainers/devs,
When working with git remotes and tags (instead of importing upstream tarballs) an upstream branch is not normally not needed or wanted. This kind of workflow is not uncommon, in fact is is suggested by the gbp documentation: /usr/share/doc/git-buildpackage/manual-html/gbp.import.upstream-git.html and DEP14 somehow implies that an upstream branch may not exist by not mentioning it at all in the "Importing upstream releases from Git tags" section. Now, coming to the point of this report. When ‘gbp push’ is called, it will look for the branch where commit tagged with the release version lies, and it will try to push this refspec to the corresponding remote branch. When working without an upstream branch, the tag will refer to a commit in the debian branch, and this commit will be behind the branch tip. As gbp-push pushes up the the tag, the push command will fail ("non-fast-forward" error). One way to work around this would be to check if the commit has already been pushed. This should be doable with: git branch -r --contains <commit> which should probably be run after a fetch. People with a more complete picture of gbp in mind will probably have better ideas. Cheers, Paride