... | ... | @@ -12,7 +12,7 @@ General information about Git's submodule support: |
|
|
|
|
|
Initial cloning of GHC HEAD (into the folder `./ghc`) is a simple as:
|
|
|
|
|
|
```plaintext
|
|
|
```
|
|
|
git clone --recursive https://gitlab.haskell.org/ghc/ghc
|
|
|
```
|
|
|
|
... | ... | @@ -24,7 +24,7 @@ Sometimes when you pull in new commits, the authors updated a submodule. After p |
|
|
|
|
|
At the top-level of `ghc.git` working copy:
|
|
|
|
|
|
```plaintext
|
|
|
```
|
|
|
git pull --rebase
|
|
|
git submodule update --init
|
|
|
```
|
... | ... | @@ -61,7 +61,7 @@ git -C libraries/Cabal checkout -b wip/$BRANCH_NAME |
|
|
|
|
|
We can now proceed with making the desired changes in the submodule and commit them as usual:
|
|
|
|
|
|
```plaintext
|
|
|
```
|
|
|
# perform modifications and as many `git {add,rm}`s as you deem necessary
|
|
|
$EDITOR libraries/Cabal/src/somefile.hs
|
|
|
# commit
|
... | ... | @@ -138,13 +138,13 @@ To land a GHC MR that requires changes to Haddock, you will need to coordinate y |
|
|
* Get your MR in a mergeable state: approved and passing CI. The `lint-submods` test should give a warning at this point, but it will not cause the CI to fail.
|
|
|
* Open an MR against the `ghc-head` branch of Haddock **on GitLab**, and get it merged.
|
|
|
* If necessary, update the GHC MR to point to the correct ghc-head haddock commit. If the commit hash didn't change, then you can skip this step.
|
|
|
* At this point, the GHC MR should be passing CI, **including** the `lint-submods` test. It can then be assigned to `marge-bot` and merged.HH
|
|
|
* At this point, the GHC MR should be passing CI, **including** the `lint-submods` test. It can then be assigned to `marge-bot` and merged.
|
|
|
|
|
|
# Troubleshooting
|
|
|
|
|
|
Git sometimes produces a rather cryptic error messages when pushing the GHC repo with unpushed submodule changes:
|
|
|
|
|
|
```plaintext
|
|
|
```
|
|
|
fatal: remote 'myremote' not configured
|
|
|
fatal: process for submodule 'utils/haddock' failed
|
|
|
fatal: the remote end hung up unexpectedly
|
... | ... | |