Git --fast-version-control
Topics ▾ Version 1.6.3 ▾ git-shell last updated in 2.11.0


$(git --exec-path)/git-shell -c <command> <argument>


This is meant to be used as a login shell for SSH accounts you want to restrict to GIT pull/push access only. It permits execution only of server-side GIT commands implementing the pull/push functionality. The commands can be executed only by the -c option; the shell is not interactive.

Currently, only four commands are permitted to be called, git-receive-pack git-upload-pack and git-upload-archive with a single required argument, or cvs server (to invoke git-cvsserver).


Written by Linus Torvalds <>


Documentation by Petr Baudis and the git-list <>.


Part of the git(1) suite