虽然git是分布式的版本管理系统,但对于团队项目开发,通常还是会在单独的服务器上创建一个git server。类似于svn,git server也有好几种配置方式。详情,可以参见git的文档http://git-scm.com/book/en/v2。这里,主要是从上述文档中摘出一部分,说明一下git-shell的用处。
假如,大家都使用ssh的方式来访问:
$ git clone [email protected]:project.git
这就意味者,访问者具有权限可以ssh登陆到服务器上:
$ ssh [email protected]
出于安全的考虑,我们最好限制用户只能进行git push/pull,但无法登陆。这可以使用git-shell来完成。
查看一下git-shell的位置:
$ which git-shell
/usr/bin/git-shell
将git-shell的路径添加到/etc/shells文件中,然后修改git用户的shell:
$ sudo chsh git
设置为/usr/bin/git-shell。这样,如果再使用ssh方式登陆,则会报错:
$ ssh [email protected]
[email protected]'s password:
Welcome to Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-35-generic x86_64)
* Documentation: https://help.ubuntu.com/
fatal: Interactive git shell is not enabled.
hint: ~/git-shell-commands should exist and have read and execute access.
Connection to 10.3.0.99 closed.
我的博物馆故事 官方安卓版v1.61.2
我的博物馆故事是一款以消除为主题的经营养成类手游,在这里玩家
专业模拟飞行10 手机版v12.2.4
专业模拟飞行10安卓版是一款飞行休闲手游,顶尖的物理飞行引擎
动物起义战斗模拟器二琳同款 最新版v4.1.1
动物起义战斗模拟器是一个非常有趣的模拟类游戏,玩家可以召唤各
迷你世界七周年 安卓手机版v1.43.0
迷你世界7周年是一款由《迷你世界》官方推出的庆祝特别版本,在
劫后公司无限资源版 v1.0.5.1
劫后公司内置菜单版是游戏的破解版本,在该版本中为玩家提供了内