D.git
Vladimir Panteleev
vladimir at thecybershadow.net
Tue Dec 24 18:19:22 PST 2013
I wrote a tool which generates a git repository containing the D
components as submodules:
https://github.com/CyberShadow-D/D
This repository has a linear history, and contains only updates
to its submodules. The submodule updates are mainly pull request
merge commits, obtained by traversing each repository's commit
tree, starting with the master branch, through each commit's
first parent. These commits are interwoven in a chronological
order, so that all pull requests merged within the same
week/day/hour are always neighbored together, regardless of the D
component.
The result is a repository which should be much easier to
regression-test than individual D components, as there are often
D changes which require simultaneous changes to several
components. Using this repository with "git bisect run" allows
easily pinpointing the pull request which introduced a regression.
The repository updates hourly. The tool itself can be found here:
https://github.com/CyberShadow/D-dot-git
TODO: support branches other than master. This will expose
release tags currently hidden on release branches (however, I'm
not sure how useful that would be to git bisect in this
particular case).
More information about the Digitalmars-d
mailing list