在工作中,我们有一台托管 CVS 存储库的服务器,为了限制 shell 访问该系统,我部署了RSSH多年来一直运作良好。
我们现在正在将部分存储库转换为 Git,并使用此现有服务器来托管集中式裸 Git 存储库。我想将这些限制也扩展到 Git 命令,但rssh
不支持 Git。我知道 Git 有git-shell它对 Git 做了类似的事情(虽然我没有使用过),但我不认为它理解 CVS。
鉴于这两种方法都使用将用户的 shell 设置为其中一种的机制,我不能同时使用它们。
我们仍然需要使用 CVS 存储库,所以有没有什么机制可以同时适用于 CVS 和 Git?
我目前的选择是:
- 什么都不做(这不是一个真正的选择)。
- 找到一种方法让它们都工作(因此这个问题)。
- 忘记安全性,只给每个人 shell 访问权限。
- 放弃这个想法,将中央 Git 存储库放在另一台服务器(可能是虚拟的)上并使用
git-shell
. - 还有一些我没想到的事情。