![如何处理 Google Code 中的二进制文件?](https://linux22.com/image/1270533/%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86%20Google%20Code%20%E4%B8%AD%E7%9A%84%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%EF%BC%9F.png)
您如何处理 Google Code Mercurial 存储库中的二进制文件?我听说过一些有关 bfiles 扩展之类的东西,但我不知道从哪里开始。
如果您要说我不应该将二进制文件放在我的 HG 存储库中,那么我应该把它们放在哪里?它们需要可供其他开发人员拉取/下载。但是,我不需要合并、差异化或保留不同版本的二进制文件的副本。我只需要获取存储库中的最新二进制文件,这样当您执行hg pull -u
.
我希望这并不意味着我必须停止使用 Google Code 并进行一些自定义安装。
答案1
如果二进制文件不是特别大(例如,大多数图像都很好),那么就不必担心。Google Code 可以很好地接受二进制文件,并且 Mercurial 可以毫无问题地处理它们的差异。
唯一需要担心 bfiles 扩展的情况是,如果您处理的是非常大的二进制文件 - 在这种情况下,我建议您认真考虑是否真的需要将它们包含在同一个源代码存储库中。我并不反对对它们进行版本控制,或者以其他方式保留已知的良好副本,但请考虑将它们保存在单独的存储库或其他可根据需要包含在项目中的只读位置。
由于您的模型可能是您项目中的某种嵌入式资源,我建议您直接将它们与其余资产一起进行版本控制,因为如果不是这样,您的构建过程将变得复杂。它们不太可能像您的源代码那样发生很大变化,因此一旦您克服了传输 300MB 的初始障碍,您的提交、推送和拉取就会很快。
你可能还想考虑其他 mercurial 提供商,例如BitBucket.org- 我不会说它们一定更好或更差,它们只是围绕源代码管理提供了一组不同的服务。免责声明:我通常更喜欢 BitBucket。
答案2
它出现Mercurial 并不关心它是否是二进制的。有一些解决方案,但我不知道它们与 Google Code 的配合情况如何。外部二进制文件和BFiles(以及本页上的更多链接)