... | ... | @@ -45,17 +45,6 @@ rm -rf libraries/parallel |
|
|
git submodule update --init
|
|
|
```
|
|
|
|
|
|
## `git status` and dirty submodules
|
|
|
|
|
|
By default, git will consider your submodule as "dirty" when you do `git status` if it has any changes or any untracked files. Sometimes this can be inconvenient, especially when using [Phabricator](phabricator) which won't allow you to upload a diff if there are dirty submodules. Phabricator will let you ignore untracked files in the main GHC repo, but to ignore untracked files in a submodule you'll need a change to `.git/config` in the GHC repo. For example, to ignore untracked files in the `nofib` repo, add the line `ignore = untracked` to the section for `nofib` in `.git/config`:
|
|
|
|
|
|
```wiki
|
|
|
[submodule "nofib"]
|
|
|
url = /home/simon/ghc-mirror/nofib.git
|
|
|
ignore = untracked
|
|
|
```
|
|
|
|
|
|
|
|
|
## Making changes to GHC's submodules
|
|
|
|
|
|
Here we will describe how to modify make changes in the submodules of the GHC repository. In the discussion that follows we will assume that the user is working on a GHC branch named `wip/$BRANCH_NAME`. It's very important to keep in mind that Git submodules track commits, not branches. Therefore, `git submodule update` will result in submodules having checked out a so-called [detached HEAD](http://alblue.bandlem.com/2011/08/git-tip-of-week-detached-heads.html).
|
... | ... | |