1

test_project在 AWS 上有一个 git 存储库 - 我没有使用 github。

我希望几个学生能够“签出”、“分支”、“克隆”等等,这样他们就可以获得项目中可用的所有文件,但永远无法“签入”、“合并”、“推送”,随便变回原来的test_project

当我把项目拉下来时,我总是clone把它放到我的个人机器上,这样我就可以在任何地方进行更改,并且push在我离开那台机器之前进行更改——这样我总是拥有我正在处理的任何东西的最新版本(我有 3 台机器)经常不得不在两者之间工作)。

我应该让学生使用什么命令来“签出”这个项目,这样他们就不会意外地将他们的更改“合并”回原始存储库?

4

2 回答 2

3

通过 git:// 或 https:// 协议授予访问权限。不要给他们写访问权限(例如通过 ssh://)。如果它是一个小型存储库,那么笨拙的 http:// 也可以做得很好。

于 2012-10-28T15:30:26.470 回答
1

请参阅自定义 Git - 示例 Git 强制策略一文中的“强制执行基于用户的 ACL 系统”,其中解释了如何通过接收端的挂钩进行设置。

当您的环境有所增长时,gitolite似乎是一个更好的选择。

于 2012-10-28T15:03:24.337 回答