关于如何在Github中保存文件而不跟踪其更改的很多问题。我想知道是否有任何方法可以更新所述文件而不跟踪更改。
用例是,我在项目仓库中有一些经常更新的大文件。我希望这些保持项目的一部分,并在Github上可用,但它们是数据,而不是代码库,我不需要保存它们的历史状态。似乎不跟踪他们的变化对我和Github都有好处。
是否有办法从git树中删除以前的提交,例如,如果他们只编辑了数据文件而没有其他文件?
一般的解决方案是将较大的文件(通常是二进制资产之类的文件)存储在存储库之外。这可以在任何地方,甚至在GitHub上的其他Git存储库中,或者在一些Git- lfs托管站点上,或者其他任何地方,只要你的用户有办法检索文件。然后让你的软件存储URL(或多个URL),通过它可以检索文件;这就是进入Git存储库,这使得小(或至少小er)库符合通常的GitHub范围内。
您可以替换存储站点上的二进制文件,保留url,或者提出新的稍微不同的url,这样就可以判断出一些旧的签出不再具有可用的二进制资产。后一种系统相当于使用Git-LFS,它由可安装的软件组成,这些软件可以"包装"。你的Git系统,并半自动地为你做这种文件转换,让任何使用Git存储库的人都能看到。只要它们自己安装并使用Git-LFS,就可以下载大文件。那些没有安装Git-LFS的人看到的是"指针文件"。(它由url和hash-ID校验和组成),这才是存储库中真正结束的内容。
(GitHub Git-LFS自己做支持,但是通常需要支付它,作为初始存储限制都很小,因为这些事情。)
你试过github lfs了吗?在其中一个项目中,我们必须将游戏资产存储在那里。
顺便说一句,如果迁移
,你需要重写整个历史记录以排除大文件。