git喜欢其他非代码文件的图像解决方案

时间:2016-05-13 14:11:30

标签: git version-control

我使用git已经有一段时间知道了。管理源代码文件并跟踪不同版本真的很棒。但是,我有很多属于我的项目但不属于源代码的文件,例如:

  • 与客户签订合约的PDF文件
  • Photoshop PSD文件
  • 包含项目进度,问题等的Excel文件
  • 发票
  • 不同图表的MS Visio文件
  • ...

当然我可以将这些文件添加到我项目的git repo中,但我更喜欢将这些文件与源代码文件分开。第一个原因是,处理代码的不同开发人员不应该访问许多这些文件。当然,这仍然可以通过使用两个不同的回购来解决。第二个原因是,git是设计师最适合文本文件。当然它可以用于图像,pdf,psd等,但它不是一个理想的解决方案。

这些文件中的大多数都不会经常更改,但是当它们发生变化时,它们将被完全替换。例如,大多数发票都会生成一次,但从未更改过。如果需要更改发票,则将其替换为新文件。

因此,我正在寻找一种解决方案,旨在处理大型二进制文件并跟踪完整的文件更改(文件中的小变化)。对于此方案,我认为备份版本控制更好。

我考虑过使用 rsync 或类似的工具。但是,这根本不提供任何版本控制:如果替换File-A是具有相同名称的新版本,则rsync将简单地使用其新版本覆盖该文件,而无法返回到先前版本。

Appel Time Machine 精灵时间轴将成为非常接近我所寻找的工具。但是,这些工具旨在将版本化备份保留在某些本地存储上,而不是使用不同的遥控器,如git。

那么:有没有什么好的解决方案,那就是以类似git的方式处理(或多或少)静态文件?

1 个答案:

答案 0 :(得分:1)

您可能想要查看https://git-lfs.github.com/