2.7 KiB
title | author | category |
---|---|---|
using cgit on tilde.club | deepend | tutorials |
cgit
gives every tilde.club member a simple, read‑only web view of their public Git repositories.
Any repo you put in ~/public_git/
and end with .git
is automatically shown at
https://tilde.club/~<username>/git/
Below is the quick‑start plus a few tips.
1 Create the public_git directory (once)
$ mkdir -p ~/public_git
The web server is already allowed to traverse ~/public_git
, so you do not have to chmod anything manually.
2 Add a repository
Only bare repos are accepted (they have no working tree inside them).
# create a brand‑new bare repository
$ cd ~/public_git
$ git init --bare hello.git
or push an existing project:
$ cd ~/my/project
# add tilde as a remote and mirror‑push everything
$ git remote add tilde ssh://<username>@tilde.club/~/public_git/project.git
$ git push --mirror tilde
You can repeat for as many repos as you like; just keep each one directly in
~/public_git/
and make sure the name ends with .git
.
3 Browse your repos
Index page : https://tilde.club/~<username>/git/
Single repo : https://tilde.club/~<username>/git/<repo>.git/
Example for user deepend:
https://tilde.club/~deepend/git/ # lists everything
https://tilde.club/~deepend/git/hello.git/ # specific repo
The header will say ~deepend Git Repositories
, commits are clickable, diffs
are highlighted, and the cloning URL is shown near the top right.
4 Update a repository
Because the repo is bare you push into it; cgit shows the new state immediately.
$ git push tilde main # normal
$ git push --mirror tilde # full mirror (branches + tags)
5 Remove a repository
Simply delete or rename the directory:
$ rm -rf ~/public_git/oldstuff.git
The entry disappears from the index on the next page load.
FAQ
Can I hide a repo from the list?
Move it somewhere else in your home directory or make it non‑bare.
cgit
only scans ~/public_git/*.git
.
Why bare repos only?
Internal .git/
directories inside non‑bare repos confuse cgit’s scanner and
produce broken links like /repo.git/.git/
.
Bare repos avoid that and are the normal way to publish Git over HTTP.
Clone / pull URL?
Use SSH for write access:
ssh://<username>@tilde.club/~/public_git/<repo>.git
or plain HTTPS for read‑only:
https://tilde.club/~<username>/git/<repo>.git
Happy hacking, and show off your code!
Questions? #club
on irc.newnet.net or mail root@tilde.club.