Know how else git submodule is broken? git grep in a submodule doesn't work. While grep -r XXX . does.
Conversation
This Tweet is from a suspended account. Learn more
Like a recursive grep but it understands what's not part of the source tree and can be used on any commit, etc. rather than simply what you have checked out at the moment. It's quite useful simply for not looking in .git, build output, etc. without excluding that stuff.
1
1
This Tweet is from a suspended account. Learn more
This Tweet is from a suspended account. Learn more
I think subtrees make more sense for tightly bound components and repo is a nicer approach than submodules for other things.
Submodules are bad enough that both AOSP and Chromium invented their own versions of it to work around how broken/weird/painful they are to deal with.
2
1
Yeah, I won't ever use/introduce submodules into a project if I can avoid it. I'm 100% for subtrees. Mainly because today's software w/ things like leftpad/mimemagic causing pain.
2
I don't mind repo because it's simply a text file describing repositories via branch, tag, revision, etc. and it's nice to deal with for overriding repositories and so on. It essentially works like submodules if you reference things via revision which you do for a release.
2
repo? as in gerrit/git-repo? Yeah, I'm not really into adding yet another build tool into the mix these days. It's a good way to prevent cross platform compatibility.
2
I wouldn't call it a build tool. It's a fairly straightforward script for managing a bunch of Git repositories.
It's comparable to making a top-level repository with everything else as submodules, but without the pain of submodules, and very unopinionated about how you use it.
The manifest is in a repository by itself with nothing else. If you want, you can refer to everything via specific revisions. Generally, you refer to stuff via tags or even branches for development and for a build you generate a frozen revision manifest with repo manifest -r.
1
1
This Tweet is from a suspended account. Learn more
Show replies

