Folding ghc/testsuite repos *now*, 2nd attempt (was: Repository Reorganization Question)
Herbert Valerio Riedel
hvr at gnu.org
Thu Jan 9 10:31:13 UTC 2014
Hello All,
It seems to me, there were no major obstacles left unaddressed in the
previous discussion[1] (see summary below) to merging testsuite.git into
ghc.git.
So here's one last attempt to get testsuite.git folded into ghc.git before
Austin branches off 7.8
Please speak up *now*, if you have any objections to folding
testsuite.git into ghc.git *soon* (with *soon* meaning upcoming Sunday,
12th Jan 2014)
----
A summary of the previous thread so far:
- Let's fold testsuite into ghc before branching off 7.8RC
- ghc/testsuite have the most coupled commits
- make's it a bit easier to cherry pick ghc/testsuite between branches
- while being low-risk, will provide empiric value for deciding how
to proceed with folding in other Git repos
- Proof of concept in
http://git.haskell.org/ghc.git/shortlog/refs/heads/wip/T8545
- general support for it; consensus that it will be beneficial and
shouldn't be a huge disruption
- sync-all is adapted to abort operation if `testsuite/.git` is
detected, and advising the user to remove (or move-out-of-the-way)
- Concern about broken commit-refs in Trac and other places:
- old testsuite.git repo will remain available (more or less)
read-only; so old commit-shas will still be resolvable
- (old) Trac commit-links which work currently will continue to
work, as they refer specifically to the testsuite.git repo, and
Trac will know they point to the old testsuite.git
- If one doesn't know which Git repo a commit-id is in, there's
still the SHA1 look-up service at http://git.haskell.org/ which
will search all repos hosted at git.haskell.org for a commit
SHA1 prefix. Or alternatively, just ask google about the SHA1.
- Binary blobs (a few compiled executables) that were committed by
accident and removed right away again are removed from history to
avoid carrying around useless garbage in the Git history (saves
~20MiB)
- Path names are rewritten to be based in testsuite/, in order to
make it easier for Git operations (git log et al.) to follow
history for folders/filenames
- Old Commit-ids will *not* be written into the rewritten commits'
messages in order not to add noise (old commit ids can be resolved
via the remaining old testsuite.git repo)
[1] http://permalink.gmane.org/gmane.comp.lang.haskell.ghc.devel/3099
More information about the ghc-devs
mailing list