我正在开发一个包含许多小PDF文件的LateX包(http://www.openlilylib.org/lilyglyphs)。目前只有几十个,但随着软件包及其用户群的增长,可能会有数百个(但不可能超过1000个)。
PDF的大小通常只有几KB,但我不知道是否要在Git存储库中跟踪它们。文件随时可能更改,但可能不太常见 通常会告诉一个人不要跟踪无法区分的二进制文件,但我也读过,这对于较小的文件和较小的整体音量并不重要。我认为最终PDF总数不会超过几MB。
该软件包可以下载或通过我喜欢的Git存储库获得,因为使用软件包很自然地导致贡献 ...
目前在克隆Git存储库时,必须使用Python和LilyPond表示法软件重建pdf,因此赌注相当高 - 这就是为什么我希望将pdf直接放在repo中。
有什么想法吗?
编辑以回答答案/评论:
从存储库中的源代码生成pdf文件 ,这就是为什么我不愿意在Git中跟踪它们。
但是:
pdf文件在更新/更正时会发生变化。这不会经常发生,我认为跟踪源代码可以解决这个问题。但是,每当有新版本的LilyPond可用时,pdf也会发生变化,可能每两到四周一次。因此,虽然源代码保持不变,但pdf将会正常更改 - 这是用Git跟踪它们的明显指标 另一方面,我们正在谈论(可能)几百个文件,每个文件几KB,所以我不知道是否值得为这个问题烦恼。
答案 0 :(得分:4)
如果文档没有更改,则没有理由在git中跟踪它们的更改。没有修订,也不需要修改版本。
但如果他们确实随着时间的推移而发生变化,并且有人可能因任何原因需要查阅旧文档版本,请考虑以下问题:
如果这些问题的答案是肯定的,那么它们可能是git下版本控制的良好候选者。
答案 1 :(得分:2)
问题是:您是否想要将git专门用于源代码管理/跟踪/同步,或者您是否也希望将其用于分发?对于小型项目,它简化了以这种方式执行的操作,对于大型项目,它会使回购膨胀。
答案 2 :(得分:1)
我知道这是一个老帖子,但我在搜索时发现它,所以其他人也可能。以下是我找到的一些选项
正如已经指出的那样,很多将取决于这些源文件是否会随着时间而改变。
如果他们不更改(或不经常更改),您可以选择将其副本保存在您控制的服务器上或云存储选项上,并使安装脚本下载而不是生成它们。< / p>
这可能取决于安装了wget或curl的用户,但大多数人都这样做,如果他们不这样做,你总是可以提示用户手动下载。
如果PDF经常随源更改,您可以查看GIT LFS。我自己从未使用它,但已经看过它。