<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>BOM on GitFAQ中文网</title><link>http://www.gitfaq.cn/tags/BOM/</link><description>Recent content in BOM on GitFAQ中文网</description><generator>Hugo</generator><language>zh</language><copyright>[black8](https://0x8.net/)</copyright><lastBuildDate>Mon, 26 Oct 2026 17:16:02 +0800</lastBuildDate><atom:link href="http://www.gitfaq.cn/tags/BOM/index.xml" rel="self" type="application/rss+xml"/><item><title>Git 中存储文件的推荐方法是什么?</title><link>http://www.gitfaq.cn/posts/recommended_way_to_store_files_in_Git/</link><pubDate>Thu, 25 Jul 2024 09:51:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/recommended_way_to_store_files_in_Git/</guid><description>&lt;p&gt;虽然 Git 可以存储和处理任何类型的任何文件，但有些设置比其他设置效果更好。一般来说，我们建议将文本文件存储在 UTF-8 中，不带字节顺序标记 (BOM)，并带有 LF（Unix 样式）结尾。我们还建议在提交消息中使用 UTF-8（同样，不带 BOM）。这些设置在各个平台上以及与&lt;code&gt;git diff&lt;/code&gt;和&lt;code&gt;git merge&lt;/code&gt;等工具配合使用时效果最佳。&lt;/p&gt;&#10;&lt;p&gt;此外，如果你可以在基于文本或非基于文本的存储格式之间进行选择，我们建议将文件存储在文本格式中，并在必要时将它们转换为其他格式。例如，每行一个记录的基于文本的 SQL 转储将比实际数据库文件更适合于差异和合并。类似地，基于文本的格式（如 Markdown 和 AsciiDoc）将比二进制格式（如 Microsoft Word 和 PDF）效果更好。&lt;/p&gt;&#10;&lt;p&gt;类似地，通常不建议在存储库中存储二进制依赖项（例如共享库或 JAR 文件）或构建产品。最好将依赖项和构建产品存储在工件或包服务器上，只将引用、URL 和哈希存储在存储库中。&lt;/p&gt;&#10;&lt;p&gt;我们还建议设置一个&lt;a href="http://www.gitfaq.cn/tags/gitattributes/"&gt;gitattributes&lt;/a&gt;文件来明确标记哪些文件是文本文件，哪些是二进制文件。如果你希望 Git 猜测，你可以设置属性&lt;code&gt;text=auto&lt;/code&gt;。例如，以下内容可能适用于某些项目&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e2e4e5;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#78787e"&gt;# By default, guess.&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;*&#9;&lt;span style="color:#ff5c57"&gt;text&lt;/span&gt;&lt;span style="color:#ff6ac1"&gt;=&lt;/span&gt;auto&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#78787e"&gt;# Mark all C files as text.&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;*.c&#9;text&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#78787e"&gt;# Mark all JPEG files as binary.&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;*.jpg&#9;binary&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;这些设置帮助工具为输出（例如补丁）选择正确的格式，并导致文件以适合该平台的行尾签出。&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;via &lt;a href="https://git.js.cn/docs/gitfaq"&gt;https://git.js.cn/docs/gitfaq&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&#10;&lt;blockquote class=''&gt;&#10;&lt;p&gt;AI生成&lt;/p&gt;&#10;&lt;/blockquote&gt;</description></item></channel></rss>