LFS: GitLab LFS don't provide git-lfs-authenticate command
This command is used for provide LFS-server location and authorization information for SSH users.
Now it's simply whitelisted in gitlab-shell, but don't implement in GitLab LFS server.
Lack of this command is root cause of many troubles described at page http://doc.gitlab.com/ce/workflow/lfs/manage_large_binaries_with_git_lfs.html, for example:
- getsockopt: connection refused
- Credentials are always required when pushing an object
For SSH users LFS client:
- try to get LFS-server information with command like:
ssh git@gitlab.com git-lfs-authenticate gitlab-org/gitlab-ce download
* try to use requested url and authorization information for LFS-server;
* on invalid git-lfs-authenticate response try to find LFS-server on default location and ask password from git-credentionals for every request.
Correct git-lfs-authenticate looks like:
```json
{
"header": {
"Authorization": "Token SomeAuthData"
},
"href": "https://gitlab.com/gitlab-org/gitlab-ce.git/info/lfs"
}
API documentation: https://github.com/github/git-lfs/tree/master/docs/api