"GOT", but the "O" is a cute, smiling pufferfish. Index | Thread | Search

From:
Landry Breuil <landry@openbsd.org>
Subject:
Re: Landry's firefox repository
To:
Christian Weisgerber <naddy@mips.inka.de>
Cc:
gameoftrees@openbsd.org
Date:
Wed, 31 Jan 2024 09:24:29 +0100

Download raw body.

Thread
Le Tue, Jan 30, 2024 at 09:43:01PM +0100, Christian Weisgerber a écrit :
> (This is me again musing about something that didn't work as expected
> for me, but I don't know to what degree that's a bug, much less
> what to do about it.)
> 
> Landry keeps a publically readable git repository for the OpenBSD
> www/mozilla-firefox port, where he also tracks the beta releases:
> https://cgit.rhaalovely.net/mozilla-firefox/
> 
> That requires git(1) for cloning/fetching because of https, but
> apart from that I tried using a got checkout... and ran into the
> problem that the usual "got up -b origin/master && got rb master"
> dance threw conflicts at me even though there were no local commits.
> Huh.
> 
> To reproduce:
> 
>   # get and prepare repository
>   git clone --bare https://cgit.rhaalovely.net/mozilla-firefox/
>   cd mozilla-firefox.git
>   git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*'
>   git fetch
> 
>   cd ..
>   got co -b origin/master mozilla-firefox.git
>   cd mozilla-firefox
>   # reset master to an earlier commit where it once was
>   got ref -c 9cd4661e4c refs/heads/master
>   # try rebasing (fast forwarding) this to the new tip
>   got rb master
>   C  Makefile
>   C  distinfo
>   Files with new merge conflicts: 2
>   4e6975f4a13f -> merge conflict: 121.0.1
>   got: conflicts must be resolved before rebasing can continue
> 
> Looking at this with "git log --graph", I see that landry@ has
> a branch "master" for release versions and a branch "beta" for
> beta versions.  If there are intermediate point releases, those
> go to "master", which is then partially merged into beta.  Each
> new major release, "beta" is apparently renamed to "master" and
> a new "beta" branch is created.

i never 'rename' branches, but:
- during the beta cycle, commits happen in the beta branch
- if there's a 0.1 release, i commit it in the master branch, then merge
  master branch into beta branch (fixing conflicts in Makefile and distinfo)
- at RC time, beta branch is merged to release branch
- at release time:
  - i commit everything to cvs from the release branch,
  - then commit the CVS churn changes to the release branch,
  - then merge the release branch to master branch,
  - then merge the master branch to beta branch,
  - then start working on the next beta1 version

i never use rebase, everything is .. 'cyclic' ?

Landry