git可以用空的repo路径推送吗?

时间:2012-09-18 10:59:42

标签: linux git

我创建了一个用户名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

1 个答案:

答案 0 :(得分:1)

目前尚不清楚为什么要按照自己的建议设置服务器 - 这当然不正常。

作为bash用户的git是INsecure

如果你离开你的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是安全的

对于将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.

它唯一允许你做的就是有效地拉动和推动遥控器。