Cthulhu: Organizing Go Code in a Scalable Repo
blog.digitalocean.com
Cthulhu: Organizing Go Code in a Scalable Repo
1–10 of 17 posts
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#2Hmm. Sounds like “gta” is a reimplementation of “pants” or bazel (? - I’ve never worked with bazel).
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#3Nothing good can come of naming a project `cthulhu`.
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#4Hmm. Sounds like “gta” is a reimplementation of “pants” or bazel (? - I’ve never worked with bazel).
I think they have a similar goal. The difference sounds like gta uses git for change detection while bazel uses hashes to detect changes (hashes include the hashes of the transitive closure of the deps; it’s a dag). The latter is more robust in the face of noop edits that don’t change the output as well as distributed caching of test/build results.
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#5Nothing good can come of naming a project `cthulhu`.
It sort of "worked" for Lovecraft :-) even as people may suggest other actions and alternative interpretations of the human situation:
"H.P. Lovecraft Invented a Horrific World to Escape a Nihilistic Universe" https://newrepublic.com/article/119996/hp-lovecrafts-philoso...
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#6Nothing good can come of naming a project `cthulhu`.
[deleted]
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#7I understand the theory behind Monorepo but it always just rubs me the wrong way.
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#8A little off-topic, but does anyone have any recommendations for methods for managing 10s of git repos as various dependencies for wildly varying projects as opposed to this sort of mono-repo approach? I've seen some organizations try to use ivy, but never in a robust way.
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#9I understand the theory behind Monorepo but it always just rubs me the wrong way.
I find them appealing because orchestrating lots of git repos is such a mess.
Re: Cthulhu: Organizing Go Code in a Scalable Repo
#10I understand the theory behind Monorepo but it always just rubs me the wrong way.
I find them appealing because orchestrating lots of git repos is such a mess.
IMO the solution is git submodules.
The problem with submodules mostly is the horrible workflow and the missing tool integration.
Varying dependencies could result in separate parent repos that contain different subsets of submodules.
A simple script can fix tooling: first commit the submodule changes then create the parent repo commit.