多个用户在共享网络驱动器上使用Git仓库是否安全?

时间:2012-03-27 13:06:58

标签: eclipse git shared egit

我们正在使用Eclipse(带有eGit插件),我想在一个共享网络驱动器上托管一个repo,这个驱动器有几个用户具有写访问权。

用户是否都可以指向相同的原始仓库(在共享驱动器上),或者每个用户是否可以将仓库克隆到本地驱动器,处理此本地版本,并根据需要将更改推送到联网原件?

Eclipse似乎允许您从Git仓库“导入”(到Eclipse工作区)一个项目,但是在您选择“共享项目”之前,Git似乎不会监视导入的项目。在此步骤中,工作目录将成为该项目的repo工作目录的工作目录。据推测,共享此项目的所有用户将拥有相同的工作目录,即共享驱动器上的repo。

我不清楚这种影响,但在第一次检查时似乎不是一个好主意!它将如何处理基本问题,例如2个用户试图同时打开同一个文件进行编辑?

感谢。

2 个答案:

答案 0 :(得分:7)

每个人都有自己的回购更好。

将当前存储库克隆为裸存储库并将其放在网络驱动器上。

e.g。

git clone --bare /path/to/current/cool_project cool_project.git  

将cool_project.git移动到您的网络驱动器,让每个人都可以从中进行克隆。 Bare repos没有工作目录,因此名称,因此可以安全地推送到。

有关详细信息,请参阅Git Pro书籍的第4章 - Git on a Server,特别是chapter 4.2

答案 1 :(得分:3)

从它的声音来看,你在谈论每个用户通过网络指向git存储库,而不是在每个开发人员的计算机上都有单独的git存储库,然后推送到“中央”存储库。如果我正确地阅读你的问题,这不是利用g​​it提供的优势的好方法。 Git是一个分布式版本控制系统,因此每个人都应该拥有自己的存储库,并将更改推送到您构建CI的中央存储库。