一个git分支可以在同一个遥控器中膨胀吗?

时间:2017-07-08 06:24:58

标签: git

我在master遥控器上有一个带origin分支的git存储库。团队中的其他开发人员正在将他们自己的dev/feature分支推送到同一个遥控器。最终这些分支将被丢弃,或者压缩 - 合并到master中,然后删除。

现在团队中的一些开发人员不熟悉git,并且可能会通过添加二进制文件等来扩大其功能分支的历史。最终,他们将发送拉取审核请求,必须进行审核,审核人员将强制执行没有添加二进制文件。

在这种情况下,我希望dev/feature分支膨胀(例如git可能变慢,拉/克隆它们可能需要一段时间等)。问题是,这是否会导致仅与同一个遥控器中的其他分支机构合作的人员出现任何性能问题。

1 个答案:

答案 0 :(得分:2)

  

问题是,这是否会导致仅与同一个遥控器中的其他分支机构合作的人员出现任何性能问题。

如果按下膨胀的分支,是的,它会影响其他人的表现,但仅适用于git fetch(包括git pull)。默认情况下,它将下载每个分支的整个历史记录和完整内容。有很多方法可以解决这个问题,比如git clone --single-branch只能获得master,但下面有更好的解决方案。

但它不应影响其他操作。 git diffgit log等......都应该基本上不受影响。

使用git-lfs,而不是阻止人们将二进制文件置于版本控制中,或仅克隆某些分支。这是两全其美的。您可以将二进制文件放在版本控制中,但实际内容存储在存储库外部以避免存储库膨胀。