[llvm-dev] [RFC] One or many git repositories?

Alexander via llvm-dev llvm-dev at lists.llvm.org
Fri Sep 9 12:40:51 PDT 2016

Oh sorry. I missed that. I'll do that aswell. But what i said was just 
about the general idea of only using what you need and breaking of 
dependencies (in this case a kind repositorydependency if everything is 
not a submodul).

Imagine someone wants to work on something inside of LLVM itself. he 
creates a branch, does his changes. At some point he'll rebase his 
branch on top of the remote version. Lot of commits flow in. Even if no 
conflict occured, you might want to study the new commits. At this point 
however you have to filter out all the commits which do not influence 
the LLVM-Project. Instead if it's a repo with submodules, you can work 
on the LLVM submodul and review only those commits. I'd say the 
Monolith-Repo has (maybe) to much noise sometimes.

The whole LLVM/CLang/... has some nice (theoretical) groups you 
can/could split them into. However reading about the cmake-magic here i 
get it that it might be hard to really decouple them.

Am 09.09.2016 um 16:11 schrieb Mehdi Amini:
> On Sep 9, 2016, at 2:11 AM, Alexander Benikowski 
> <sebal007 at googlemail.com <mailto:sebal007 at googlemail.com>> wrote:
>> I'd vote for having each component in a seperated Repository and 
>> using a Monorepo with Submodules to work with.
>> Since CLang depends on LLVM but not vice versa (if i am not mistaken. 
>> I'm new here), i'd prefer to just work with the LLVM repo if it is 
>> desired.
> Can you elaborate why and what kind of workflow you have that would 
> benefit from this?
> Also did you read the document I sent with the examples?
> -- 
> Mehdi
>> 2016-09-08 21:49 GMT+02:00 Renato Golin via llvm-dev 
>> <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>>:
>>     On 8 September 2016 at 19:37, Mehdi Amini via llvm-dev
>>     <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>>     > I'd expect a cmake shortcut cmake
>>     > -DLLVM_ENABLE_PROjECTS=clang,libcxx,compiler-rt
>>     Hey, I like this idea!
>>     In that case, we don't need the directories in any particular
>>     location, as CMake would be able to find and link any place *we* want
>>     to put them in (in tree, flat out) and pull out their CMake files.
>>     This would also help each project to be built in its own, if they so
>>     require, without upsetting the LLVM-canon build style.
>>     cheers,
>>     --renato
>>     _______________________________________________
>>     LLVM Developers mailing list
>>     llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
>>     http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>     <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160909/dce85ffb/attachment.html>

More information about the llvm-dev mailing list