Go to file
Francesco Allara 0bdfb3b25b First 2016-03-12 20:08:45 +01:00
Gitshell First 2016-03-12 20:08:45 +01:00
.gitignore First 2016-03-12 20:08:45 +01:00
Gitshell.sln First 2016-03-12 20:08:45 +01:00
README.md First 2016-03-12 20:08:45 +01:00

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