Merge several subrepos into bundle repo (monorepoify)
See original GitHub issueRight now I’m really bothered by the overhead of managing submodules, CI, and releases. Things would be a lot simpler if a lot of things were brought into one repo.
Then I read this: https://danluu.com/monorepo/
Has been discussed a little before in: https://github.com/ActivityWatch/activitywatch/issues/70
Things that would improve:
- Most issues would go in the standard activitywatch repo (easier overview, less cross-referencing)
- Open PRs would become easier to overview and cross-repo changes could be put in a single PR instead of spread across repos
- CI would be easier to maintain and run full integration tests on all projects for every commit
- Easier to install
Things that would worsen:
- CI build times
- The contributor stats stuff would have to be rewritten
Repos I’d merge in:
- aw-core
- aw-server
- aw-webui
- aw-client
- aw-client-js
- aw-watcher-afk
- aw-watcher-window
- aw-watcher-web
Things we’d have to do:
- For each repo to be merged:
- In original repo, check out a new branch, move all files into subfolder with same name as repo, commit.
- In destination repo,
git mergethe original repo’s pre-merge branch.
- Move all issues and open PRs
Issue Analytics
- State:
- Created 5 years ago
- Comments:6 (4 by maintainers)
Top Results From Across the Web
Creating a monorepo from separate repos (merging ...
In this post we'll look at how to combine multiple repositories into a single repository. The common reason you might want to merge...
Read more >Merge two git repositories with history into subdirs and ...
This is my current setup: Two repositories which were seperatly developed: apprepo; librepo. These are both cloned and bundled into a rpm by...
Read more >Consolidating multiple repositories into a Monorepo
Merging multiple single repositories into a Monorepo. Git natively supports the ability to merge multiple repositories, but it can be difficult ...
Read more >Merging multiple repositories into a monorepo, while ...
How to merge multiple repositories, with their history, into a single repository, using the `git subtree add` command.
Read more >Get your code together! Submodules, monorepo, or the third ...
It's one of the first commandments we learn when we begin to study ... 'git subrepo' - to name a few), but in...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

Hi! Thanks for asking for my comment. I think as long as the architecture remains modular (not monolithic), then I think it’s fine to make a monorepo. You can use this git trick to merge in the commits from all repos.
I don’t like monorepos, but if we want fewer repos this would be my suggestion of merging more stuff into aw_server like this:
I like when the clients and their dependencies are in seperate repos, makes more sense for third-party watchers. The modules specified above should be aw_server exclusive anyway.