Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/vole.git

Write over SSH with a registered key:

git clone ssh://git@rodent.software:2222/vole.git

A free and open-source forge that lives in your Git repo.

Document the root-level URL layout

b7396a1155147a13c5595216f204a545e9f74202 · Keenan Nemetz · 9h ago · parent ed03b3d1

Document the root-level URL layout

The guides now say /<name> for a repository and /-/ for the forge's own pages,
including the clone examples, theme asset paths, profile and registration
URLs, robots.txt, and the deployment package URLs. docs/architecture.md gains
a short URL layout section: why the two spaces cannot collide, the four root
names the forge keeps, and why the transport carries .git.

docs/go-modules.md follows the layout: the module path is the repository page,
the clone URL is the same name with .git, discovery is answered before the
router, and a published module path is durable because renaming the repository
breaks it.

docs/lfs.md +2−2

@@ -14,7 +14,7 @@ git add .gitattributes art/hero.psd
14 14 git commit -m "add the hero art"
15 15 git push origin main
16 16
17 git clone http://host/git/demo.git # LFS files come through the same URL
17 git clone http://host/demo.git # LFS files come through the same URL
18 18 ```
19 19
20 20 Writes use the SSH key you already push with. Reads use the normal HTTP clone URL.
@@ -67,7 +67,7 @@ this, so it works even for a plain `git push` without a client-side hook.
67 67
68 68 An admin can push past a lock. That override is recorded in `data/audit.log`;
69 69 otherwise a lock held by someone who has left would block the file forever. The
70 `/r/<repo>/locks` page shows current locks.
70 `/<repo>/locks` page shows current locks.
71 71
72 72 Locks are not part of a clone. They live beside the account list in
73 73 `data/users.db`, because they are temporary state and should not come back from