我想开始使用github存储我的项目,但我对如何处理媒体文件感到困惑。我一直在研究的许多项目都是单页Web应用程序,它们大量使用图形,使我的项目看起来不错。我被撕裂了,因为如果我承诺并推动项目没有任何图形,任何人看着我的代码(一个可能的雇主)可能会感到困惑,并认为该项目在视觉上是丑陋或更糟糕的,会发现到处都是破碎的图像,因为我对这些图像进行了监控文件。但是,如果我提交并推送图形,似乎这可能被视为不是最佳实践,并且会使我的存储库膨胀。我也试过用git页面做过一次,并且对于如何处理我的图形感到很困惑。
我在github上看过的大多数项目似乎都不是网络应用程序,但往往不是插件和库,所以我真的不知道其他人在做什么关于这个问题。有没有任何标准或最佳实践方法来处理作为图像的git文件?
答案 0 :(得分:5)
通常,由于Git跟踪内容(任何内容),因此它不关心您添加到存储库的内容。无论是文本文件(例如源文件),还是编译二进制文件或其他二进制资产(如图像)。在内部,Git以同样的方式处理所有这些。
您应该考虑这些图形是否是存储库的部分。你描述它的方式,似乎它们确实是项目的一部分,因为其他文件依赖于它们。此外,无法从存储库中已存在的文件创建它们(例如,由于存储库包含编译它们的源,因此通常不包括已编译的二进制文件。)
至于“膨胀”,是的,二进制文件通常比文本文档大。因此,在存储库中包含许多二进制文件可以快速增加存储库的大小。但与文本文件相比,它们没有额外的影响。适用于文本文件的内容也适用于二进制文件:由于Git只存储文件的每个内容一次(无论其类型如何),因此在整个历史记录中保持相同的文件只会存储一次。所以特别是如果你的图形有些不变(即你不是一直都在改变它们),那么它们绝对不会“膨胀”你的存储库。
同样,如果他们是项目的一部分,他们可能应该成为存储库的一部分。