0bdfb3b25b | ||
---|---|---|
Gitshell | ||
.gitignore | ||
Gitshell.sln | ||
README.md |
README.md
gitreposharp
This project aims to offer a simple solution to manage git repositories without the need to setup a database or any other kind of complex infrastructure.
To setup and use a test environment you should put in the configuration file 'Gitshell.exe.config' some parameters.
- repository_path This entry should contain the absolute path to the git repositories parent directory.
- logfile This parameter should contain the absolute path to the log file where the application should write its logs.
- users_file This parameter should contain the absolute path to a ini-formatted file containing the users/repos authorizations
The authorizations file should be written this way.
[group:devproj1]users = francesco user2 user_3
[repository:reponame.git]
groups = devproj1
[repository:subpath/reponame.git]
users = francesco
For now no spaces are supported in the user/repository name
SSH authorized keys
In order to work the application has to be called by the ssh daemon, so you need to append to the .ssh/authorized_keys file for each user:
command="/absolute/path/to/mono /absolute/path/to/Gitshell.exe user_name",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa|ssh-dsa pubkey_content