Understanding Gitosis user repo access

I have set up git and gitosis at my Ubuntu v-server. Creating new repositories on the server, checking out gitosis-admin.git and pushing an altered conf and new keys (otheruser.pub for example) works fine. The authorized_keys file gets updated as well. But now I got stuck.

If I try to push an existing (locale machine) repository to a bare repository on the myserver.com with a different user then ‘git‘ it doesn’t work.

  • How to diff one file to an arbitrary version in Git?
  • editing non-master branch in git
  • How to use GitHub V3 API to get commit count for a repo?
  • Do squashed commits conflict with their original commits
  • Why is git push gerrit HEAD:refs/for/master used instead of git push origin master
  • What to do, when missed some key refs during push to Gerrit
  • Example (SSH):


    works, but



    I assumed that gitosis creates temp users or something similar on the machine. Is that correct?

  • Git ignore ANY changes to a git repository
  • Working directory diff with Git Extensions
  • How to discover where 'pip install git+ssh://…' is searching for ssh keys?
  • Find commits that modify file names matching a pattern in a GIT repository
  • Find out which local branches are out of sync with remote
  • How to use git tfs with a team
  • One Solution collect form web for “Understanding Gitosis user repo access”

    With gitosis you always use the same userid (git@…). You are identified by the ssh key you’re using. You’ll note that commericial Git hosting services like GitHub and Gitorious work the same way.

    I want to highlight djs’s comment: you should not be able to log into the git user account with a password. Gitosis relies on the ssh authorized_keys files to operate correctly, and this is only used when someone authenticates using ssh keys.

    Git Baby is a git and github fan, let's start git clone.