Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
ksindi authored Feb 19, 2018
1 parent d4b18e5 commit 4de2155
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# MonoReaper

Merge github repositories into a monorepo directory while preserving commit history.
Merge GitHub repositories into a monorepo directory while preserving commit history.

## Usage

Expand Down Expand Up @@ -31,3 +31,18 @@ MONOREPO_DIR=path/to/my/monorepo bash monoreaper.sh user/repo0 user/repo1
```

Note that the `MONOREPO_DIR` must have `master` as default branch.


## Why monorepos?

- Streamlines ops logic like doing CICD. The overhead of setting up pipelines and deployments is cumbersome.
- Shared codebase introduces shared ownership, naming and style.
- Dependencies across services are easier to manage.
- Searching code across multiple repos is a hassle.
- Lots of great tools that take advantage of monorepos:
- [pull-review](https://github.com/imsky/pull-review): automate pull reviews with lots of configuration options.
- [buildpipe](https://github.com/ksindi/buildpipe): customizing pipeline logic by looking at git changes in projects.
- Lots of anecdotal evidence:
- [Optimizing for iteration speed](https://erikbern.com/2017/07/06/optimizing-for-iteration-speed.html)
- [Why Google Stores Billions of Lines of Code in a Single Repository](https://research.google.com/pubs/pub45424.html)

0 comments on commit 4de2155

Please sign in to comment.