@@ -15,8 +15,8 @@ If you access a GitLab server over HTTP(S) you end up in [gitlab-workhorse](http
...
@@ -15,8 +15,8 @@ If you access a GitLab server over HTTP(S) you end up in [gitlab-workhorse](http
An overview of the four cases described above:
An overview of the four cases described above:
1. git pull over ssh -> gitlab-shell -> API call to gitlab-rails (Authorization) -> accept or decline -> establish Gitaly session
1. git pull over SSH -> gitlab-shell -> API call to gitlab-rails (Authorization) -> accept or decline -> establish Gitaly session
1. git push over ssh -> gitlab-shell (git command is not executed yet) -> establish Gitaly session -> (in Gitaly) gitlab-shell pre-receive hook -> API call to gitlab-rails (authorization) -> accept or decline push
1. git push over SSH -> gitlab-shell (git command is not executed yet) -> establish Gitaly session -> (in Gitaly) gitlab-shell pre-receive hook -> API call to gitlab-rails (authorization) -> accept or decline push
## Git hooks
## Git hooks
...
@@ -68,12 +68,13 @@ To install gitlab-shell you also need a Go compiler version 1.8 or newer. https:
...
@@ -68,12 +68,13 @@ To install gitlab-shell you also need a Go compiler version 1.8 or newer. https:
## Setup
## Setup
./bin/install
make setup
./bin/compile
## Check
## Check
./bin/check
Checks if GitLab API access and redis via internal API can be reached:
make check
## Keys
## Keys
...
@@ -89,14 +90,27 @@ List all keys:
...
@@ -89,14 +90,27 @@ List all keys:
./bin/gitlab-keys list-keys
./bin/gitlab-keys list-keys
Remove all keys from authorized_keys file:
Remove all keys from authorized_keys file:
./bin/gitlab-keys clear
./bin/gitlab-keys clear
## Testing
Run Ruby and Golang tests:
make test
Run Rubocop and gofmt:
make verify
Run both test and verify (the default Makefile target):
make validate
## Git LFS remark
## Git LFS remark
Starting with GitLab 8.12, GitLab supports Git LFS authentication through ssh.
Starting with GitLab 8.12, GitLab supports Git LFS authentication through SSH.