Git Branching - 对大型项目信任?

时间:2012-08-02 08:43:29

标签: git

我很高兴惊讶于用Git执行分支是多么容易。令我担心的是,对于我在目录结构中可能拥有的所有数百个文件,我真的可以信任Git,以确保在我签出另一个分支时所有文件都处于正确的状态吗?这似乎太快了。

有没有人经历过他们结帐不同分支的时间,有些文件被跳过,或者只是在你知道应该有的时候没有改变?

3 个答案:

答案 0 :(得分:3)

因为Git根据文件内容的散列来管理指向文件的指针,所以无论有多少文件,它都不需要重写几乎相同的目录。如果您查看提交的结构和树的概念,您将看到Git将非常有效地遍历这些结构,并且只更改工作目录中需要更改的部分。它的力量在于简洁。

我从来没有遇到过Git和大型项目的任何问题。 Linux内核和其他大型项目都使用Git进行版本化,没有任何问题,性能快速可靠。

答案 1 :(得分:2)

是的,你可以相信它。但是,当确实出现问题时,存储库的任何其他克隆(在主存储库本身旁边)都是备份;)

它太快了,因为

  • 每个操作都是本地的,这意味着:不需要慢速网络操作
  • 它只将更改推送到工作区:它采用当前分支和分支到结帐之间的第一个共同祖先,将更改从当前结帐恢复到此祖先,然后将更改从祖先应用到其他科。这只发生在后台,但这大大减少了文件的数量,或最终推入工作区的更改。

可能(可能,可能;))还有其他优化。我不知道。

答案 2 :(得分:1)

我已经使用Git好几年了,并发现它在这个领域非常可靠。我已将它用于数千个文件的项目中。