[LLVMdev] Howdy + GIT
Joshua Cranmer 🐧
Pidgeot18 at gmail.com
Thu Jan 15 14:46:23 PST 2015
On 1/15/2015 12:13 PM, Reid Spencer wrote:
> Hello LLVMers,
>
> It has been a while (8 years?) since I’ve been involved with LLVM but
> I’m considering picking it up again. My recent review of the code base
> has led me to wonder if it isn’t time to update the code base,
> specifically:
>
> * Convert to GIT
> * Refactor into smaller, separate, reusable libraries
> * Host the master repository at GitHub (amongst other places)
>
It's not clear from your suggestion if you are or are not planning on
breaking the repositories into smaller chunks (e.g., how the llvm and
clang repositories are hosted as separate git modules). If this is
indeed what you are suggesting, then the following paragraph applies:
Losing atomicity of commits in a project is a pain that you do not want
to have to suffer, speaking as a maintainer of project which is
bifurcated in two distinct repositories for the past 6 years. SVN allows
you to do partial tree checkouts, a feature which is to my knowledge not
replicated by any major DVCS. You thus get the choice between having one
monolithic repository for all projects, or making do with non-atomic
commits, and that last option is not viable given the coupling between
llvm, clang, and compiler-rt at the very least. Separating them would
subject developers to the worst kind of development hell that can only
be accurately conveyed to those who have had the misfortune to be
sentenced there. Or to those who recall CVS or other abominations of
version control. :-)
Beyond that, though, my impression of GitHub is that it encourages
development models and processes which do not scale to large projects,
which llvm undoubtedly is. Its issue tracking system is underpowered,
its reviewer underwhelming, and you're prone to lose important
information if you, say, rebase pull requests (at least the last time I
checked). It's designed to encourage its particular development model,
and if you want anything that's different (say, linear history), well,
you have to fight it all the way.
> Sorry if this topic has been covered .. the archives are not
> searchable (google group, anyone?).
GMane:
<http://search.gmane.org/?query=github&group=gmane.comp.compilers.llvm.devel>.
Which is infinitely better than Google Groups.
--
Joshua Cranmer
Thunderbird and DXR developer
Source code archæologist
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150115/1ad855ff/attachment.html>
More information about the llvm-dev
mailing list