|
8 tahun lalu | |
---|---|---|
git-hooks | 11 tahun lalu | |
git-shell-commands | 10 tahun lalu | |
parabola-keyring | 8 tahun lalu | |
.gitignore | 10 tahun lalu | |
Makefile | 12 tahun lalu | |
README.markdown | 12 tahun lalu | |
authorized_keys | 10 tahun lalu | |
ssh_config | 12 tahun lalu |
Hackers is a simple git repository management tool. I started this for Parabola GNU/Linux-libre when our gitosis broke and was never fixed. We didn't need gitosis' granular permissions anyway.
Hackers.git allows for decentralized management, since any hacker added can add new keys, own and others'.
It uses the git-shell to allow users to do git repository tasks (create a repo, mirror one, etc.) using ssh to connect to the repository server.
Clone hackers.git somewhere and add yours and other people's SSH pubkeys (at least yours) to the authorized_keys file, then commit.
This step can be done in a single step with make bootstrap
(or let the next
step do it). If you don't you won't be able to login later!
Run make PREFIX=/srv/git
as root, where PREFIX is the git root. Check the
Makefile itself to see other options.
Now you can use ssh git@host command arguments
, run the help command to
list commands and arguments available.
You'll need git-shell
, on Parabola it's on the git package. Also a working
ssh daemon with "AuthorizedKeysFile .ssh/authorized_keys" (default in most
installations).
On your hacking user, you can add this to your ~/.ssh/config
Host git
HostName git_hostname_can_be_localhost
User git
The repo URL will be git:repo.git or ssh://gitPREFIX/repo.git.
git format-patch HEAD-1
and send the generated patches to one of the
other hackers listed.There's a post-receive hook on the origin hackers.git repository that updates a clone on ~/.ssh. Any change pushed to it is immediately reflected in access privileges for the git user.
git is an unprivileged user. If you know how to skip this and gain access to our servers be kind and let us now ;)