Simon Peyton Jones <[email protected]> writes: > Dear devs > > I'm working on !8750, which has some knock-on changes that are needed on > the Haddock repo. So > > - in the main repo I have wip/T21623 > - in the utils/haddock repo have branch wip/spj-T21623 > > Periodically I need to rebase on master. > > Question: what is the Blessed Sequence of Commands that I should use to > push the right changes to haddock? I think it is something like: > > > 1. In the main GHC repo, on branch wip/T21623 > 1. git fetch > 2. git rebase origin/master > > 2. In utils/haddock, > 1. identify the set of patches P1..Pn between the trunk and my haddock > tip, the changes that I need to haddock. > 2. Somehow check out the haddock commit K that corresponds to > origin/master > 3. Apply P1..Pn on top of K > 4. Force-push to origin/wip/spj-T21623 > 3. Move to the main GHC repo > 1. git add utils/haddock > 2. Create a patch for that change > 3. Push to main repo > > > But I am not sure how to do step 2.2, nor what is an efficient way to do > 2.3. > In general GHC `master` should always refer to the `ghc-head` branch in the Haddock repository.
The easiest way would be to use `git rebase`. Specifically, given a
history like:
W --- X --- Y --- Z <-- origin/ghc-head
\
\--- A --- B <-- wip/spj-T21623
Running:
git rebase origin/ghc-head
while on wip/spj-T21623 will result in:
W --- X --- Y --- Z <-- origin/ghc-head
\
\--- A --- B <-- wip/spj-T21623
Do be sure to update your local tracking branches before doing this
(using `git remote update origin`).
Overall, this would look something like:
$ cd utils/haddock
$ git remote update origin # update local tracking branches
$ git checkout wip/spj-T21623 # ensure you are on your WIP branch
$ git rebase origin/ghc-head
$ git push -f origin wip/spj-T21623 # push your Haddock branch
$ cd ../..
$ git commit utils/haddock
$ git push -f origin wip/TspjT21623 # push your GHC branch
Cheers,
- Ben
signature.asc
Description: PGP signature
_______________________________________________ ghc-devs mailing list [email protected] http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
