diff options
Diffstat (limited to 'EndoForge')
-rw-r--r-- | EndoForge/README.md | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/EndoForge/README.md b/EndoForge/README.md index 2e03084..00567c9 100644 --- a/EndoForge/README.md +++ b/EndoForge/README.md | |||
@@ -30,22 +30,27 @@ machine containing the repository. | |||
30 | The contributions are stored in namespaces according to the public keys of the | 30 | The contributions are stored in namespaces according to the public keys of the |
31 | contributors. This prevents collisions. | 31 | contributors. This prevents collisions. |
32 | 32 | ||
33 | (It is also possible to do _without_ `IP` connectivity using DHT connectivity; | 33 | The contributions are cryptographically validated, which allows consensus |
34 | mechanisms to be implemented in git `post-receive` hooks to synchronize the | ||
35 | repositories, or just automate their distribution along standardized channels. | ||
36 | |||
37 | (It is also possible to do _without_ `IP` connectivity using `DHT` connectivity; | ||
34 | see `tuntox.git`.) | 38 | see `tuntox.git`.) |
35 | 39 | ||
36 | ## WHAT IS A `Forge` | 40 | ## WHAT IS A `Forge` |
37 | 41 | ||
38 | A `Forge` is a "place" where programmers share source code.[1] | 42 | A `Forge` is a network "hub" that provides storage and hosting for version |
39 | 43 | control repository databases. The largest `Forge` is Microsoft's `GitHub`. | |
40 | Anyone could share any content, in principle. | ||
41 | 44 | ||
42 | The point is the *revision control system* used track past changes. The `Forge` | 45 | A `Forge` is the "place" where programmers share their source code with one |
43 | is the place that stores all the different past versions of the code in a format | 46 | another. The point is the *revision control system* used track past changes. The |
44 | that allows all changes to be undone. Modifying databases of past history is how | 47 | `Forge` stores all the different past versions of the code in a format that |
45 | multiple programmers collaborate on the same work of source code. | 48 | allows all changes to be inspected and undone. Modifying these databases of all |
49 | past history is how multiple programmers collaborate on the same work of source | ||
50 | code. (Such databases were the first blockchains.) | ||
46 | 51 | ||
47 | The largest `Forge` is Microsoft's `GitHub`; but in another sense, the largest | 52 | The largest `Forge` is Microsoft's `GitHub`; but in another sense, the largest |
48 | `Forge` is `Wikipedia`. ) | 53 | `Forge` is `Wikipedia`. |
49 | 54 | ||
50 | Note that a `Forge` is different from a web site. A `Git`-based `Forge` must | 55 | Note that a `Forge` is different from a web site. A `Git`-based `Forge` must |
51 | accept contributions in the `Git-Over-SSH` protocol. That is the convenient and | 56 | accept contributions in the `Git-Over-SSH` protocol. That is the convenient and |
@@ -58,7 +63,7 @@ service before they can connect using `Git`'s native language of `SSH`. | |||
58 | Using a `Self-Forge` relieves users of dependency on any troublesome | 63 | Using a `Self-Forge` relieves users of dependency on any troublesome |
59 | intermediary `Forge`. You get your own `Forge`. You are your own `Forge`. | 64 | intermediary `Forge`. You get your own `Forge`. You are your own `Forge`. |
60 | 65 | ||
61 | ## What is `Git-Over-SSH` | 66 | ## WHAT IS `Git-Over-SSH` |
62 | 67 | ||
63 | `Git-Over-SSH` is the standard `Git` protocol for _both reading and writing_ a | 68 | `Git-Over-SSH` is the standard `Git` protocol for _both reading and writing_ a |
64 | repository. It is the same `Git` protocol one uses when _pushing_ to | 69 | repository. It is the same `Git` protocol one uses when _pushing_ to |
@@ -83,8 +88,8 @@ They can then commit changes to the repository, and push them back to `origin`. | |||
83 | The changes will exist in a separate space from where any other user can | 88 | The changes will exist in a separate space from where any other user can |
84 | overwrite. The cryptography of `OpenSSH` makes this possible. | 89 | overwrite. The cryptography of `OpenSSH` makes this possible. |
85 | 90 | ||
86 | HOW IT WORKS | 91 | HOW ENDOFORGE WORKS |
87 | ------------ | 92 | ------------------- |
88 | 93 | ||
89 | Normally, `OpenSSH` server only permits connections from users whose keys have | 94 | Normally, `OpenSSH` server only permits connections from users whose keys have |
90 | been pre-authorized on the server. `OpenSSH` assumes that access should be | 95 | been pre-authorized on the server. `OpenSSH` assumes that access should be |
@@ -127,7 +132,8 @@ Note that, once installed, you can run this in ANY repository. | |||
127 | 132 | ||
128 | You can also run `make shared` but that just runs the same `git config` for you. | 133 | You can also run `make shared` but that just runs the same `git config` for you. |
129 | 134 | ||
130 | ## HOW TO DISABLE | 135 | HOW TO DISABLE |
136 | -------------- | ||
131 | 137 | ||
132 | To disable public access to the repository, run: | 138 | To disable public access to the repository, run: |
133 | 139 | ||