Hi Timo (and Geert), On Sun, Apr 24, 2022 at 10:42:51PM +0200, Timo Röhling wrote: > Hi Julian, > > * Julian Gilbey <jul...@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 all the advice! I managed to sort it moderately cleanly in the end, and this email records what happened and what I did, in case anyone might benefit from this in the future. It turns out that I'd also messed up more than I'd realised: even when I pulled in the updated master branch, I didn't pull the upstream branch, so managed to introduce even more conflicts. Oh well. But the key things that allowed for a moderately clean fix were: * I'd correctly used gbp import-orig to pull in the original 5.3.0 distribution to the master branch * I had an upstream/5.3.0 tag in my local repository (which for some reason I hadn't pushed, yeesh) So the state of the salsa repository was (in an ideal world where I'd pulled upstream): - master included the upstream/5.3.0 commit, tagged as upstream/5.3.0, along with further commits - upstream was at upstream/5.2.2 - pristine-tar contained data up to upstream/5.2.2 To fix the problem, I did: $ git checkout upstream $ git reset --hard upstream/5.3.0 $ git checkout master $ gbp pristine-tar commit and that fixed everything. I finished with git push --all and git push --tags. I hope I don't make this mistake again! Best wishes, Julian