[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Messed up a salsa commit - how best to fix?



Hi Timo,

On Sun, Apr 24, 2022 at 10:42:51PM +0200, Timo Röhling wrote:
> Hi Julian,
> 
> * Julian Gilbey <julian@d-and-j.net> [2022-04-24 21:01]:
> > Somehow I managed to really mess up a commit to python-qtconsole: the
> > upstream and pristine-tar branches do not have the upstream/5.3.0
> > sources (the current ones).  However, there's already an
> > upstream/5.3.0 tag in the repository, pointing to a commit to the
> > master branch.
> > 
> > I think the simplest thing to do is to "rewrite history": delete the
> > head commits to the master branch and the 5.3.0 tags, and then
> > recommit correctly and force-push to salsa.
> > 
> > Would people be OK with me doing this, or do you have an alternative
> > suggestion?
> I looked at the Salsa repository, and it is not so bad. It seems like you
> forgot to pull the latest changes in upstream and pristine-tar from
> the 5.2.2 import first, so your import of 5.3.0 forked the those branches
> unintentionally.

Thanks for the analysis, but I don't think that's what happened.  I
think what I did was something like this:

* I had an up-to-date clone of the repository from salsa (at tag
  debian/5.2.2-1 on master, and at tag upstream/5.2.2 on upstream)
* I ran gbp import-orig on the new 5.3.0 sources.
* I realised I'd done something wrong, so I tried to reset --hard all
  three branches back to before the import.
* I then re-imported the 5.3.0 sources correctly, or so I thought.

(That can't be exactly right, but it may be close to what happened.)
But somehow, that didn't work properly, and what I've ended up with is
that the master branch is correct, with the upstream/5.3.0 and
debian/5.3.0-1 tags pointing at the correct commits, but the upstream
and pristine-tar branches are not up-to-date: the don't have the
upstream 5.3.0 contents.

So what I'm thinking I could do is:
* Unpack the 5.3.0 sources into the upstream branch and commit the
  change
* Reset the upstream/5.3.0 tag to point to this new commit
* Use gbp pristine-tar to create the .delta and .id files on the
  pristine-tar branch

This does not rewrite history, but it fixes the gbp problem, with the
only change required being a modification to the upstream/5.3.0 tag.

Thoughts?

   Julian


Reply to: