我正在寻找有关如何处理我的源代码(Web 应用程序)所依赖的大型二进制文件的意见。我们目前正在讨论几种替代方案:
- Copy the binary files by hand.
- 专业人士:不确定。
- 反对:我强烈反对这一点,因为它增加了设置新站点/迁移旧站点时出错的可能性。建立了另一个障碍。
- Manage them all with Git.
- 优点:消除了“忘记”复制重要文件的可能性
- 反对:使存储库膨胀并降低管理代码库的灵活性,并且签出、克隆等将需要相当长的时间。
- Separate repositories.
- 优点:签出/克隆源代码的速度一如既往地快,并且图像正确地存档在自己的存储库中。
- 魂斗罗:消除了拥有的简单性唯一的项目上的 Git 存储库。它肯定引入了一些我没有想到的其他事情。
您对此有什么经验/想法?
另外:是否有人有使用多个 Git 存储库并在一个项目中管理它们的经验?
这些文件是用于生成包含这些文件的 PDF 的程序的图像。这些文件不会经常更改(如数年),但它们与程序非常相关。如果没有这些文件,程序将无法运行。
我发现git 附件 http://git-annex.branchable.com/最近我觉得很棒。它专为高效管理大文件而设计。我用它来收藏我的照片/音乐(等)。 git-annex 的开发非常活跃。文件的内容可以从 Git 存储库中删除,Git 仅跟踪树层次结构(通过符号链接)。但是,要获取文件的内容,在拉/推之后还需要执行第二步,例如:
$ git annex add mybigfile
$ git commit -m'add mybigfile'
$ git push myremote
$ git annex copy --to myremote mybigfile ## This command copies the actual content to myremote
$ git annex drop mybigfile ## Remove content from local repo
...
$ git annex get mybigfile ## Retrieve the content
## or to specify the remote from which to get:
$ git annex copy --from myremote mybigfile
有许多可用的命令,并且网站上有很棒的文档。软件包可在Debian http://en.wikipedia.org/wiki/Debian.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)