mirror of
https://seed.radicle.dev/rad:z3trNYnLWS11cJWC6BbxDs5niGo82.git
synced 2026-10-18 19:10:39 +08:00
RIP 1: Improvements to diagram
This commit is contained in:
+20
-20
@@ -492,26 +492,26 @@ This allows for code to be staged for publishing even while offline, provided
|
||||
the user's storage is accessible. In most cases, it makes sense to keep
|
||||
storage and working copies on the same machine.
|
||||
|
||||
┌─────────────────────────────────────┐ ┌───────────────────────────────────┐
|
||||
│ ┌────────────────────────┐ ┌──────┐ │ │ ┌──────┐ ┌──────────────────────┐ │
|
||||
│ │ Storage │ │ │ │ git │ │ │ │ Storage │ │
|
||||
│ │ ├─┤------├─┼─--------─┼─┤------├─┤ │ │
|
||||
│ │ ┌───────┐ ┌───────┐ ┌│ │ │ │ fetch │ │ │ │ ┌───────┐ ┌───────┐ │ │
|
||||
│ │ │Project│ │Project│ ││ │ │ │ │ │ │ │ │Project│ │Project│ │ │
|
||||
│ │ ├───────┤ ├───────┤ ├│ │ │ │ │ │ │ │ ├───────┤ ├───────┤ │ │
|
||||
│ └─┴────▲──┴──┴────┬──┴──┴┘ │ │ │ │ │ │ └─┴────┬──┴──┴────▲──┴─┘ │
|
||||
│ │ │ │ │ │ gossip │ │ │ │ │ │
|
||||
│ │ │ │ node ├─┼─--------─┼─┤ node │ │ │ │
|
||||
│ │ │ │ │ │ protocol │ │ │ │ │ │
|
||||
│ push pull │ │ │ │ │ │ pull push │
|
||||
│ │ │ │ │ │ │ │ │ │ │ │
|
||||
│ │ │ │ │ │ │ │ │ │ │ │
|
||||
│ │ │ │ │ │ │ │ │ │ │ │
|
||||
│ ┌────┴───┐ ┌───▼────┐ │ │ │ │ │ │ ┌────▼───┐ ┌───┴────┐ │
|
||||
│ │Working │ │Working │ │ │ │ │ │ │ │Working │ │Working │ │
|
||||
│ │copy │ │copy │ │ │ │ │ │ │ │copy │ │copy │ │
|
||||
│ └────────┘ └────────┘ └──────┘ │ │ └──────┘ └────────┘ └────────┘ │
|
||||
└─────────────────────────────────────┘ └───────────────────────────────────┘
|
||||
┌╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴┐ ┌╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴┐
|
||||
┆ ┌───────────────────┐ ┌──────┐ ┆ ┆ ┌──────┐ ┌─────────────────┐ ┆
|
||||
┆ │ Storage │ │ │ ┆ Git ┆ │ │ │ Storage │ ┆
|
||||
┆ │ ├╸┆╸╸╸╸╸╸┆╸╸╸╸╸╸╸╸╸╸╸╸╸╸┆╸╸╸╸╸╸┆╸┤ │ ┆
|
||||
┆ │ ┌──────┐ ┌─────┐ ┌│ │ │ ┆ protocol ┆ │ │ │ ┌─────┐ ┌─────┐ │ ┆
|
||||
┆ │ │repo │ │repo │ ││ │ │ ┆ ┆ │ │ │ │repo │ │repo │ │ ┆
|
||||
┆ │ ├──────┤ ├─────┤ ├│ │ │ ┆ ┆ │ │ │ ├─────┤ ├─────┤ │ ┆
|
||||
┆ └─┴───╿──┴─┴───┬─┴─┴┘ │ │ ┆ ┆ │ │ └─┴───┬─┴─┴───╿─┴─┘ ┆
|
||||
┆ │ │ │ │ ┆ gossip ┆ │ │ │ │ ┆
|
||||
┆ │ │ │ Node ├╸╸╸╸╸╸╸╸╸╸╸╸╸╸┤ Node │ │ │ ┆
|
||||
┆ │ │ │ │ ┆ protocol ┆ │ │ │ │ ┆
|
||||
┆ push pull │ │ ┆ ┆ │ │ pull push ┆
|
||||
┆ │ │ │ │ ┆ ┆ │ │ │ │ ┆
|
||||
┆ │ │ │ │ ┆ ┆ │ │ │ │ ┆
|
||||
┆ │ │ │ │ ┆ ┆ │ │ │ │ ┆
|
||||
┆ ┌────┴───┐ ┌──╽─────┐│ │ ┆ ┆ │ │ ┌─────╽──┐ ┌──┴────┐┆
|
||||
┆ │working │ │working ││ │ ┆ ┆ │ │ │working │ │working│┆
|
||||
┆ │copy │ │copy ││ │ ┆ ┆ │ │ │copy │ │copy │┆
|
||||
┆ └────────┘ └────────┘└──────┘ ┆ ┆ └──────┘ └────────┘ └───────┘┆
|
||||
└╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴┘ └╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴┘
|
||||
|
||||
Splitting the storage into per-project repositories has numerous advantages
|
||||
over previous designs that used a "monorepo":
|
||||
|
||||
Reference in New Issue
Block a user