Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
Hi Carlos, On Fri, Dec 08, 2023 at 12:58:41AM -0300, Carlos Henrique Lima Melara wrote: > Hi, > > I'm working with a lot of newcommers in the Debian Brasília community > and learning packaging (and a myriad of tools that come with it) is > quite overwhelming. So we try to streamline things to make packaging a > little easier. gbp is a awesome tool (thanks!) because it simplifies > working with git, but the problem comes with the combination of working > with forks+mr (remember, newcommers) and importing new upstream > releases. gpb push fails because there is no tag in the debian branch > (but we want an unreleased and untagged push to the fork so an MR can be > opened). The alternative is to teach them pushing with plain old git, > but they always forget to push the upstream/pristine-tar branches. > > Also, I too work with multiple computers and with the fork+mr workflow > so being able to just gbp push would be wonderful. git push --all is not > ok because often I have a patch-queue branch that I don't want on salsa > and also upstream branches sometimes coexist. > > S, it would be really nice to at least have a flag --tips or --head > in gbp to do all the work for me. I think gbp push --debian-tag='' does what you want. Note that this doesn't change anything for pristine-tar / upstream) which is usually the desired effect. Cheers, -- Guido > > Cheers, > Charles
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
Hi, I'm working with a lot of newcommers in the Debian Brasília community and learning packaging (and a myriad of tools that come with it) is quite overwhelming. So we try to streamline things to make packaging a little easier. gbp is a awesome tool (thanks!) because it simplifies working with git, but the problem comes with the combination of working with forks+mr (remember, newcommers) and importing new upstream releases. gpb push fails because there is no tag in the debian branch (but we want an unreleased and untagged push to the fork so an MR can be opened). The alternative is to teach them pushing with plain old git, but they always forget to push the upstream/pristine-tar branches. Also, I too work with multiple computers and with the fork+mr workflow so being able to just gbp push would be wonderful. git push --all is not ok because often I have a patch-queue branch that I don't want on salsa and also upstream branches sometimes coexist. S, it would be really nice to at least have a flag --tips or --head in gbp to do all the work for me. Cheers, Charles signature.asc Description: PGP signature
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
Took some time, but .. On Thu, 17 Dec 2020, Guido Günther wrote: > Would 'gbp push' getting a '--tips' option to just pushes the tips of > upstream, debian and pristine-tar branch help? I guess that is what I would normally use ... so yes, that would help. Thanks Norbert -- PREINING Norbert https://www.preining.info Fujitsu + IFMGA Guide + TU Wien + TeX Live + Debian Dev GPG: 0x860CDC13 fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
Hi, On Sun, Sep 09, 2018 at 05:59:19PM +0200, Guido Günther wrote: > Hi, > On Sun, Sep 09, 2018 at 10:45:35PM +0900, Norbert Preining wrote: > > Hi Guido, > > > > > See the man page. > > > > Ok, was that always like this? I faintly remember (but without > > screenshot to prove it) that I could gbp push stuff even without a > > tagged debian release!? > > It pushes everything *except* for the tip of your packaging branch (that > is any tags needed, upstream and pristine tar. > > > > > not up to date. If this does not happen it's a bug but pushing non > > > uptodate debian packaging branch is not the focus. > > > > ? I don't get what you want to say? I want gbp push to push the branches > > that are normally used by gbp (master/upstream/pristine-tar) and push > > any tag from gbp tag that isn't up there. > > And it does that, see this test: > > > https://github.com/agx/git-buildpackage/blob/master/tests/component/deb/test_push.py#L106 > > > Is this so unreasonable? > > > > Maybe I am the only developer on this earth that uses two computers and > > prefers to push/pull, but I was more than once beaten by a not pushed > > pristine-tar branch... > > Don't think so. Would 'gbp push' getting a '--tips' option to just pushes the tips of upstream, debian and pristine-tar branch help? Cheers, -- Guido > -- Guido
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
> On Sun, Sep 09, 2018 at 10:45:35PM +0900, Norbert Preining wrote: > > Hi Guido, > > > > > See the man page. > > > > Ok, was that always like this? I faintly remember (but without > > screenshot to prove it) that I could gbp push stuff even without a > > tagged debian release!? > > > It pushes everything *except* for the tip of your packaging branch (that > is any tags needed, upstream and pristine tar. > > > > > not up to date. If this does not happen it's a bug but pushing non > > > uptodate debian packaging branch is not the focus. Hi Guido, I'm trying to figure out the implication of your answer and solution for this problem. So let me summarize up the conclusion first, gbp pushes up-to-date content of everything (that is any tags needed, upstream and pristine tar) *except* for the tip of the packaging branch, because "pushing non uptodate debian packaging branch is not the focus" > > Maybe I am the only developer on this earth that uses two computers and > > prefers to push/pull, but I was more than once beaten by a not pushed > > pristine-tar branch... > Don't think so. Does that implies that people can gbp push stuff even without a tagged debian release!? > > ? I don't get what you want to say? I want gbp push to push the branches > > that are normally used by gbp (master/upstream/pristine-tar) and push > > any tag from gbp tag that isn't up there. > And it does that, see this test: > > https://github.com/agx/git-buildpackage/blob/master/tests/component/deb/test_push.py#L106 "And it does that" -- Does that implies that gbp will push all the branches that are normally used by gbp (master/upstream/pristine-tar) and push any tag from gbp tag that isn't up there. I took a look at the test: https://github.com/agx/git-buildpackage/blob/master/tests/component/deb/test_push.py#L106 But can't figure out whether my implication-guess is right or not because I don't understand those Python code. Any how, If I want gbp to push _latest_ content of everything (including all the branches that are normally used by gbp (master/upstream/pristine-tar) and any tag from gbp tag that isn't up there), what shall I do? If gbp somehow not able to do that currently, is there any workaround to make it happen? E.g., if I have to tag a debian release, then how exactly should I tag it so that it is acceptable by gbp? Please help Thanks
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
Hi, Yves-Alexis Perez writes: > I started using gbp push/pull recently and I'm also surprised by the current > behavior. What is the rationale for *not* pushing the Debian branch as part of > the push? > > For me, gbp push semantics are: “just push everything needed”, but it's > obviously not the intended behavior. What is the intended behavior then? +1. For Go packaging, our tooling recommends users use “gbp push” to transfer their local repository state to salsa. The fact that this now only works after you tag a release trips people up: https://github.com/Debian/dh-make-golang/issues/107 Any chance we could get the new behavior hidden behind a flag, or at least get a flag to restore the old behavior? Thank you, -- Best regards, Michael
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On Sun, 9 Sep 2018 17:59:19 +0200 Guido =?iso-8859-1?Q?G=FCnther?= < a...@sigxcpu.org> wrote: > Hi, > On Sun, Sep 09, 2018 at 10:45:35PM +0900, Norbert Preining wrote: > > Hi Guido, > > > > > See the man page. > > > > Ok, was that always like this? I faintly remember (but without > > screenshot to prove it) that I could gbp push stuff even without a > > tagged debian release!? > > It pushes everything *except* for the tip of your packaging branch (that > is any tags needed, upstream and pristine tar. > > > > > not up to date. If this does not happen it's a bug but pushing non > > > uptodate debian packaging branch is not the focus. > > > > ? I don't get what you want to say? I want gbp push to push the branches > > that are normally used by gbp (master/upstream/pristine-tar) and push > > any tag from gbp tag that isn't up there. > > And it does that, see this test: > > https://github.com/agx/git-buildpackage/blob/master/tests/component/deb/test_push.py#L106 > > > Is this so unreasonable? > > > > Maybe I am the only developer on this earth that uses two computers and > > prefers to push/pull, but I was more than once beaten by a not pushed > > pristine-tar branch... > Hi, I started using gbp push/pull recently and I'm also surprised by the current behavior. What is the rationale for *not* pushing the Debian branch as part of the push? For me, gbp push semantics are: “just push everything needed”, but it's obviously not the intended behavior. What is the intended behavior then? Regards, - -- Yves-Alexis -BEGIN PGP SIGNATURE- iQEzBAEBCAAdFiEE8vi34Qgfo83x35gF3rYcyPpXRFsFAlu7husACgkQ3rYcyPpX RFux4gf+O2W4z5q4fHNb5GSsI9ifqv4yZ8YDopsBWPrPO11sFV22akRzpb6W13p5 ebl5bBWIcrfY6gX85vZZaY2YD7zmq/pXGZn1eaI7rEHWA0SYgIyPqbreQcOPjkFJ DZhj1DKV4pQJr2yvrLnm89u7xKqR+LZEBWwR2svRTxvwyY5VHZ7DuAGJj9jZX+dq SIka5d46+vcGgyhB+93Wwee2+MM8EgyNFal+dDE0OOhN4NQBu7nt0m8O2CKlD+7p a/GWDOUj1UlxA0bLi/PoAeiXBbkpHXz9HdbYjfqCyWmy+VD65K6wzTMtE9NSVwiR 7iYbZtJj7rSwj/LTyRXKu59Am1MNwA== =+cgN -END PGP SIGNATURE-
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
Hi, On Sun, Sep 09, 2018 at 10:45:35PM +0900, Norbert Preining wrote: > Hi Guido, > > > See the man page. > > Ok, was that always like this? I faintly remember (but without > screenshot to prove it) that I could gbp push stuff even without a > tagged debian release!? It pushes everything *except* for the tip of your packaging branch (that is any tags needed, upstream and pristine tar. > > > not up to date. If this does not happen it's a bug but pushing non > > uptodate debian packaging branch is not the focus. > > ? I don't get what you want to say? I want gbp push to push the branches > that are normally used by gbp (master/upstream/pristine-tar) and push > any tag from gbp tag that isn't up there. And it does that, see this test: https://github.com/agx/git-buildpackage/blob/master/tests/component/deb/test_push.py#L106 > Is this so unreasonable? > > Maybe I am the only developer on this earth that uses two computers and > prefers to push/pull, but I was more than once beaten by a not pushed > pristine-tar branch... Don't think so. -- Guido
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
Hi Guido, > See the man page. Ok, was that always like this? I faintly remember (but without screenshot to prove it) that I could gbp push stuff even without a tagged debian release!? > not up to date. If this does not happen it's a bug but pushing non > uptodate debian packaging branch is not the focus. ? I don't get what you want to say? I want gbp push to push the branches that are normally used by gbp (master/upstream/pristine-tar) and push any tag from gbp tag that isn't up there. Is this so unreasonable? Maybe I am the only developer on this earth that uses two computers and prefers to push/pull, but I was more than once beaten by a not pushed pristine-tar branch... Best Norbert -- PREINING Norbert http://www.preining.info Accelia Inc. +JAIST +TeX Live +Debian Developer GPG: 0x860CDC13 fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
control: severity -1 wishlist Hi, On Fri, Sep 07, 2018 at 04:32:45PM +0900, Norbert Preining wrote: > Package: git-buildpackage > Version: 0.9.10 > Severity: important > > $ gbp push --verbose > gbp:debug: ['git', 'rev-parse', '--show-cdup'] > gbp:debug: ['git', 'rev-parse', '--is-bare-repository'] > gbp:debug: ['git', 'rev-parse', '--git-dir'] > gbp:debug: ['git', 'symbolic-ref', 'HEAD'] > gbp:debug: ['git', 'show-ref', 'refs/heads/master'] > gbp:debug: ['git', 'config', 'branch.master.remote'] > gbp:debug: ['git', 'config', 'branch.master.merge'] > gbp:debug: ['git', 'tag', '-l', 'debian/3.31.0+dfsg-1'] > gbp:debug: ['git', 'rev-parse', '--quiet', '--verify', > 'debian/3.31.0+dfsg-1^{commit}'] > gbp:error: revision 'debian/3.31.0+dfsg-1^{commit}' not found > $ > > And ... so what? See the man page. > > I don't care whether I have already a debian release tag, I > want to push the stuff so that I can continue working on a different > computer. Than you can use plain "git push". gbp push's aim is to push your current release. It should push prisitne-tar and upstream branches if not up to date. If this does not happen it's a bug but pushing non uptodate debian packaging branch is not the focus. Cheers, -- Guido
Bug#908204: git-buildpackage: cannot use gbp push without tagging a release
Package: git-buildpackage Version: 0.9.10 Severity: important $ gbp push --verbose gbp:debug: ['git', 'rev-parse', '--show-cdup'] gbp:debug: ['git', 'rev-parse', '--is-bare-repository'] gbp:debug: ['git', 'rev-parse', '--git-dir'] gbp:debug: ['git', 'symbolic-ref', 'HEAD'] gbp:debug: ['git', 'show-ref', 'refs/heads/master'] gbp:debug: ['git', 'config', 'branch.master.remote'] gbp:debug: ['git', 'config', 'branch.master.merge'] gbp:debug: ['git', 'tag', '-l', 'debian/3.31.0+dfsg-1'] gbp:debug: ['git', 'rev-parse', '--quiet', '--verify', 'debian/3.31.0+dfsg-1^{commit}'] gbp:error: revision 'debian/3.31.0+dfsg-1^{commit}' not found $ And ... so what? I don't care whether I have already a debian release tag, I want to push the stuff so that I can continue working on a different computer. Thanks Norbert -- System Information: Debian Release: buster/sid APT prefers unstable APT policy: (500, 'unstable'), (200, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.18.6 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages git-buildpackage depends on: ii devscripts 2.18.4 ii git1:2.19.0~rc2-1 ii man-db 2.8.4-2 ii python33.6.6-1 ii python3-dateutil 2.7.3-1 ii python3-pkg-resources 40.2.0-1 ii sensible-utils 0.0.12 Versions of packages git-buildpackage recommends: ii cowbuilder0.87+b1 ii pbuilder 0.229.3 ii pristine-tar 1.44 ii python3-requests 2.18.4-2 Versions of packages git-buildpackage suggests: pn python3-notify2 ii sudo 1.8.23-2 ii unzip6.0-21 -- no debconf information