我创建了一个用户名git。这是passwd文件:
git:x:1001:1001:git:/home/git/test.git:/bin/bash
然后创建了一个名为'test.git'的裸露回购。完整路径为'/home/git/test.git'。
如果我像beblow一样添加遥控器,它将起作用:
git add remote origin git@abc.com:./
但我想知道以下是否有效?我在git中需要一些额外的设置吗?
git add remote origin git@abc.com
答案 0 :(得分:1)
目前尚不清楚为什么要按照自己的建议设置服务器 - 这当然不正常。
如果你离开你的git配置,因为你只依赖于信任的问题,任何有权访问git的人都不会做以下事情:
ssh git@abc.com
cd ..
ls -la // have a look
rm -rf test.git // delete git repo
cd / // go have a hack around
etc.
设置git服务器is easy - 几乎无足轻重。
如果您更新passwd
文件,请看如下:
git:x:1001:1001::/home/git:/usr/bin/git-shell
然后除了执行git命令之外,用户git绝对不会做任何事情。
然后你会这样做:
git add remote origin git@abc.com:test.git
git pull // etc
对于将git-shell作为登录shell的用户,这些内容都不起作用:
ssh git@abc.com
git remote add another git@abc.com:another.git
git push another // attempting to create a new repo
etc.
它唯一允许你做的就是有效地拉动和推动遥控器。