or use git-shell so users do not need a full ssh account on the server due to security concerns:
which git-shell
sudo echo "/usr/bin/git-shell" >> /etc/shells
sudo useradd -m -s /usr/bin/git-shell git
cat my_pub_key.pub >> /home/git/.ssh/authorized_keys
git clone ssh://git@server/home/git/myrepo.git