Git Annex与GitHub合作?

4

我对git-annex不是很熟悉,只是在阅读文档尝试理解它。我想到的一个问题是:我能否在GitHub上托管一个git仓库,然后使用git和git annex将其推送到仓库,但是设置git annex以便将二进制文件推送到类似S3存储桶的地方,而所有源代码文件都会被推送到GitHub吗?

2个回答

5
git-annex 支持多种特殊远程仓库来存储归档内容,包括 Amazon S3。当使用特殊远程仓库(或其他支持 git-annex 的远程仓库)存储归档文件时,可以将 git 仓库内容(其中包括指向 annexed 内容的符号链接以及任何直接由 git 存储在 annexed 文件旁边的内容,如源代码)一起存储。

2
将所有源代码/可合并文件提交到git,将所有二进制不可合并文件提交到annex,这是一个好主意吗?我正在考虑编写某种系统来自动执行此操作。 - rygo6
通常不建议直接将大型二进制文件提交到git中,而将源代码或其他可能进行修订的文本文件直接提交则是有意义的。我认为,在git-annex中添加可以根据某些启发式方法区分文件的封装或功能会很有用。您可以联系作者讨论此功能请求。 - frasertweedale

3

是的,您可以这样做。最简单的方法是直接使用git add将您想要加入git repo(例如源代码)的文件和git annex add将大文件添加进去。

然后,您就可以像平常一样对源代码文件(或使用git add添加的其他任何内容)进行更改并将其检入github。

您可以使用git annex命令管理大文件的存储和版本控制。Git annex支持使用AWS S3和/或冰川来备份文件。它还可以将它们备份到您通过ssh控制的服务器或外部驱动器(或以上任意组合)。 http://git-annex.branchable.com/special_remotes/

在最新版本的git annex中,您还可以设置自动筛选器,以确定哪些类型/大小的文件应直接检入git,哪些应作为附件中的链接存储。 https://git-annex.branchable.com/tips/largefiles/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接