2013-01-09 164 views
1

我一直在看一些GIT视频和阅读一些网站。到目前为止,似乎GIT可能是我的团队的一个很好的源代码控制解决方案。但是,我有一个问题/关注。我们有许多不同的代码项目,而且一次只有少数人在为它们工作。如果我们每个人在我们的机器上都有完整的代码库,那将是一团糟。哎呀,一台机器可能不会有存储容纳整个代码库和历史。是否可以设置GIT,以便每个开发人员只有他们正在他们的机器上工作的代码?我在想,你可能能够为每个项目创建一个分支,开发者可以选择是否在他们的机器上拥有它。这听起来可能吗?GIT源代码控制

+0

为什么要将所有项目放在一个存储库下? –

+0

戴夫 - 我想这是源于多年的不安全。感谢大家。相关或单个项目的存储库听起来像会让GIT成为我们的绝佳解决方案 – Dave

回答

1

我们有许多不同的代码项目的唯一有几个人一次对他们工作 。如果我们每个人都在我们的 机器上拥有完整的代码库,那将是一团糟。

您会为每个项目创建一个回购(假设您的项目是指独立应用程序)。开发人员只需要他们正在开发的项目的源代码。

其次,GIT获得了很好的压缩。它目前用作Linux的事实上的源代码控制(这是大约1000万行代码,最后我听说过)。它适用于他们,很可能,它会为你工作。

3

这种失败的分布式版本控制系统的整个存在。我认为你会惊讶于一个项目能够“适合”git而不会造成任何问题。如果linux内核可以做到这一点,那么你也可以。

如果你的项目是合理的正交,你可以让每个项目都在自己的仓库中。

+1

Git经常比zip或tar更好地“压缩”。 – Hogan

0

假设每个项目都属于一组人并且组不重叠,为什么不把每个代码项目放在单独的git存储库中?这样开发人员只能克隆他们需要的存储库。

请注意,尽管一般情况下分布式存储库比中央存储库使用更多的空间。

+0

你的意思是* checkouts *为DVCS占用的空间比集中的多,对吧?因为SVN历史上10年的特定进口,在回购方面占据了一半的空间。 –

-1

有可能,但我认为你将创建多个分支更混乱(大部分在你的大脑),你需要单独的存储库,因为它已经建议

+0

为什么要在git中将分支作为单独的软件仓库?这不是好事。 –

+0

什么?为什么你在谈论mercurial?我认为这是一个误解,我的意思是说,在分支机构和他们所在的地方迷路很容易。 – allergic

+0

它们位于您拥有的单一结帐中。只是不要使用多个目录,事情保持简单。人们总是可以'藏好'或者做'转储'提交哪一个稍后重置。 –

1

七年Linux历史记录的回购约为650MB的默认设置。而不是为每个子项目创建分支,只需为每个子项目创建一个完整的回购。如果您需要将所有子项目作为一个包收集在一起,您可以有一个将它们全部作为分支包含在其中的仓库,并将它们合并到该仓库中的单个包中。