Dne 25.04.2024 (čet) ob 12:59 +0200 je Daniel Gröber napisal(a):
> On Wed, Apr 24, 2024 at 10:06:49PM +0200, Samo Pogačnik wrote:
> > Ok, so i'll prepare merge request in salsa gitlab, after pushing my
> > change in my working branch?
> 
> So creating a MR is fine but it's not the whole story with gbp. With gbp
> you're always dealing with both a debian and an upstream branch so the MR
> model doesn't fit since it just deals with the one branch you point it
> at. That doesn't really hurt as long as you remember to push your upstream
> branch also since I won't be pressing that merge button on the web ui
> anyway.
> 
> Technically I can still just assume your upstream branch points to the
> upstream/* tag you push -- assuming you don't forget to push the upstream
> tag. Seriously this workflow has so many trap doors for DMs it's insane :)
> 
> Anyway. What I want to see is a nice linear series of sensible commits with
> your packaging changes and one merge to bring in the new upstream [history]
> on the debian branch, the conventional upstream/* tag and the corresponding
> upstream branch which should be fast-forward from the previous upstream
> history.
> 
> [history]: That's the one default gbp workflow tweak I insist on when it's
> possible i.e. when the need for dealing with tarballs doesn't get in the
> way. I want git-blame to work in packaging repos. It's increadibly valuable
> for debugging but squashing the upstream changes as import-orig defaults to
> looses most of that context.
> 
> So you should be doing something like this:
> 
>     $ git remote add upstream https://github.com/ingydotnet/git-subrepo.git
>     $ git fetch upstream
>     $ gbp import-ref -u 0.4.6 # this will do the upstream tag/branch
>                               # changes and create the merge
>     $ gbp dch
>     <make sure the changelog entries makes sense>
>     $ gbp buildpackage [...sbuild runes...]
>     <test>
>     $ git push --tags salsa debian/sid upstream
> 
> There's also `gbp push` to make the git-push easier but it only works after
> doing a `gbp tag` to create the debian/* tag. This is however inappropriate
> for you as DM to do as the convention is to have the debian tag correspond
> to what I upload not what you propose to me :)
> 
> On my side I'll do:
> 
>     $ gbp pull samo
>     <review>
>     $ gbp buildpackage [...sbuild runes...]
>     <test>
>     $ gbp tag    # creates the debian/* tag
>     $ debrelease   # upload to ftp-master
>     $ gbp push salsa
> 
> Hope that gives you something more actionable than my previous mails.
> 
Thanks for this explanation. I suppose we shall apply this workflow upon the
git-repo, that you are going to push into the debian/* namespace.

As i understand, we are going to push and pull our changes from the same
branches of the sam git-repo, however i got a bit confused by your 'gbp pull
samo' command which indicates another git-repo involved. If your initial command
should've been 'gbp pull salsa', then it is clear to me. 
   
> > > PS: I noticed too late that I'd forgotten to start adding BTS to CC. I do
> like to keep Debian work public and that includes teaching new
> contributors, do you mind if I copy our conversation back to the BTS?
I do not mind at all.

--Samo

Reply via email to