<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Blog on GitFAQ中文网</title><link>http://www.gitfaq.cn/posts/</link><description>Recent content in Blog on GitFAQ中文网</description><generator>Hugo</generator><language>zh</language><copyright>[black8](https://0x8.net/)</copyright><atom:link href="http://www.gitfaq.cn/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Git for Windows v2.56.0.windows.4发布</title><link>http://www.gitfaq.cn/posts/git_for_windows_release_v2.56.0.windows.4/</link><pubDate>Sun, 25 Oct 2026 19:34:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/git_for_windows_release_v2.56.0.windows.4/</guid><description>&lt;h1 id="git-for-windows-v2560windows4发布"&gt;Git for Windows v2.56.0.windows.4发布&lt;a class="anchor" href="#git-for-windows-v2560windows4%e5%8f%91%e5%b8%83" aria-label="Link"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;p&gt;&lt;img src="https://r2.0x8.net/imgs/ScreenShot_2026-10-26_153746_381.png" alt="Git for Windows v2.56.0.windows.4" title="Git for Windows v2.56.0.windows.4"/&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;自 Git for Windows v2.56.0(3)（2026年10月22日）以来的变更&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;这是又一个紧急安全漏洞修复版本，针对的是&lt;a href="https://www.cve.org/CVERecord?id=CVE-2026-111497"&gt;CVE-2026-111497&lt;/a&gt;。&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;问题修复&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;32 位 MinGit 中包含的可执行文件存在代码签名损坏的问题，现&lt;a href="https://github.com/git-for-windows/MINGW-packages/pull/231"&gt;已修复&lt;/a&gt;。&lt;/li&gt;&#10;&lt;li&gt;将&lt;a href="https://github.com/git-for-windows/git/issues/6514"&gt;内置的brotli组件&lt;/a&gt;升级至 v1.2.1，以解决&lt;a href="https://www.cve.org/CVERecord?id=CVE-2026-111497"&gt;CVE-2026-111497&lt;/a&gt;。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="下载git-for-windows"&gt;下载Git for Windows&lt;a class="anchor" href="#%e4%b8%8b%e8%bd%bdgit-for-windows" aria-label="Link"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://url98.ctfile.com/f/18418398-17569908262498-fc03ff?p=3705"&gt;Git-2.56.0.4-64-bit.exe&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://url98.ctfile.com/f/18418398-17569908262519-73f37e?p=3705"&gt;Git-2.56.0.4-arm64.exe&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;blockquote class=''&gt;&#10;&lt;p&gt;AI生成&lt;/p&gt;&#10;&lt;/blockquote&gt;</description></item><item><title>Git常见问题20250507</title><link>http://www.gitfaq.cn/posts/Git_faq_20250507/</link><pubDate>Wed, 07 May 2025 06:43:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Git_faq_20250507/</guid><description>&lt;h2 id="git配置"&gt;git配置&lt;a class="anchor" href="#git%e9%85%8d%e7%bd%ae" aria-label="Link"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;h3 id="我应该在-username-中放什么"&gt;我应该在 user.name 中放什么？&lt;a class="anchor" href="#%e6%88%91%e5%ba%94%e8%af%a5%e5%9c%a8-username-%e4%b8%ad%e6%94%be%e4%bb%80%e4%b9%88" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;您应该填写您的个​​人姓名，通常是使用名字和姓氏的形式。例如， Git 的当前维护者使用 &amp;ldquo;Junio C Hamano&amp;rdquo; 。这将是您所做的每个提交中存储的姓名部分。&lt;/p&gt;&#10;&lt;p&gt;此配置对远程服务的身份验证没有任何影响；有关详细信息，请参阅 git-config[1] 中的 credential.username 。&lt;/p&gt;&#10;&lt;h3 id="httppostbuffer-到底起什么作用"&gt;http.postBuffer 到底起什么作用？&lt;a class="anchor" href="#httppostbuffer-%e5%88%b0%e5%ba%95%e8%b5%b7%e4%bb%80%e4%b9%88%e4%bd%9c%e7%94%a8" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;此选项可更改 Git 通过 HTTP 或 HTTPS 将数据推送到远程时使用的缓冲区大小。如果数据大于此大小，处理 Git 的 HTTP 支持的 libcurl 将使用分块传输编码，因为事先不知道推送的数据的大小。&lt;/p&gt;&#10;&lt;p&gt;将此值保留为默认大小是可以的，除非您知道远程服务器或中间的代理不支持 HTTP/1.1（引入了分块传输编码）或已知分块数据会中断。这通常（错误地）被建议作为一般推送问题的解决方案，但由于几乎每个服务器和代理都至少支持 HTTP/1.1，因此提高此值通常无法解决大多数推送问题。无法正确支持 HTTP/1.1 和分块传输编码的服务器或代理在当今的互联网上不会那么有用，因为它会中断大量流量。&lt;/p&gt;&#10;&lt;p&gt;请注意，增加此值将增加 Git 通过 HTTP 或 HTTPS 执行的每个相关推送所使用的内存，因为无论是否全部使用，都会分配整个缓冲区。因此，最好将其保留为默认值，除非您确定需要不同的值。&lt;/p&gt;&#10;&lt;h3 id="git如何配置不同的编辑器"&gt;git如何配置不同的编辑器？&lt;a class="anchor" href="#git%e5%a6%82%e4%bd%95%e9%85%8d%e7%bd%ae%e4%b8%8d%e5%90%8c%e7%9a%84%e7%bc%96%e8%be%91%e5%99%a8" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;如果您没有为 Git 专门指定编辑器，它将默认使用您通过 VISUAL 或 EDITOR 环境变量配置的编辑器，如果两者都未指定，则使用系统默认编辑器（通常为 vi ）。由于有些人发现 vi 难以使用或更喜欢其他编辑器，因此可能需要更改使用的编辑器。&lt;/p&gt;&#10;&lt;p&gt;如果要为大多数需要编辑器的程序配置通用编辑器，可以编辑 shell 配置（例如 ~/.bashrc 或 ~/.zshenv ），使其包含一行，将 EDITOR 或 VISUAL 环境变量设置为适当的值。例如，如果您更喜欢编辑器 nano ，则可以编写以下内容：&lt;/p&gt;</description></item><item><title>GitHub发布Release详尽指南</title><link>http://www.gitfaq.cn/posts/A-detailed-guide-to-GitHub-releases/</link><pubDate>Wed, 01 Jan 2025 15:00:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/A-detailed-guide-to-GitHub-releases/</guid><description>&lt;p&gt;在开发过程中，发布 Release 是一个重要的环节，能够有效地管理软件的版本和交付。本文将详细介绍如何在 GitHub 上发布 Release，包括操作步骤、注意事项及常见问题解答。&lt;/p&gt;&#10;&lt;h2 id="什么是github-release"&gt;什么是GitHub Release&lt;a class="anchor" href="#%e4%bb%80%e4%b9%88%e6%98%afgithub-release" aria-label="Link"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;GitHub Release 是 GitHub 提供的一项功能，用于管理项目的发布版本。每一个 Release 都可以附带二进制文件、源代码压缩包以及变更日志，方便用户下载和使用。通过 Release，开发者能够清晰地展示项目的进展，并为用户提供稳定的版本。&lt;/p&gt;&#10;&lt;h2 id="为什么要在-github-上发布-release"&gt;为什么要在 GitHub 上发布 Release&lt;a class="anchor" href="#%e4%b8%ba%e4%bb%80%e4%b9%88%e8%a6%81%e5%9c%a8-github-%e4%b8%8a%e5%8f%91%e5%b8%83-release" aria-label="Link"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;版本管理：使用 Release 可以帮助开发者对项目进行有效的版本管理。&lt;/li&gt;&#10;&lt;li&gt;便于用户下载：用户可以轻松找到适合自己的版本进行下载。&lt;/li&gt;&#10;&lt;li&gt;信息透明：Release 说明可以让用户了解到版本更新的内容与改动。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="如何在-github-上发布-release"&gt;如何在 GitHub 上发布 Release&lt;a class="anchor" href="#%e5%a6%82%e4%bd%95%e5%9c%a8-github-%e4%b8%8a%e5%8f%91%e5%b8%83-release" aria-label="Link"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;h3 id="第一步准备工作"&gt;第一步：准备工作&lt;a class="anchor" href="#%e7%ac%ac%e4%b8%80%e6%ad%a5%e5%87%86%e5%a4%87%e5%b7%a5%e4%bd%9c" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;在发布 Release 之前，需要确保你的项目已经完成了相应的功能开发和测试。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;确保代码稳定：确认你的代码已经经过充分测试，能够正常运行。&lt;/li&gt;&#10;&lt;li&gt;更新文档：确保项目的文档（如 README 文件）是最新的，并且描述了新版本的主要特性。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="第二步创建-tag"&gt;第二步：创建 Tag&lt;a class="anchor" href="#%e7%ac%ac%e4%ba%8c%e6%ad%a5%e5%88%9b%e5%bb%ba-tag" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;登录到你的 GitHub 账号，进入需要发布 Release 的项目页面。&lt;/li&gt;&#10;&lt;li&gt;点击页面上方的 “Code” 选项卡。&lt;/li&gt;&#10;&lt;li&gt;在页面右侧，找到 “Releases” 链接，点击进入。&lt;/li&gt;&#10;&lt;li&gt;点击 “Draft a new release” 按钮。&lt;/li&gt;&#10;&lt;li&gt;在 “Tag version” 输入框中输入新的 Tag 名称（例如 v1.0.0）。&lt;/li&gt;&#10;&lt;li&gt;选择相应的基础分支（通常是 main 或 master）。&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h3 id="第三步填写-release-信息"&gt;第三步：填写 Release 信息&lt;a class="anchor" href="#%e7%ac%ac%e4%b8%89%e6%ad%a5%e5%a1%ab%e5%86%99-release-%e4%bf%a1%e6%81%af" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;在创建 Release 页面中，需要填写一些关键信息：&lt;/p&gt;</description></item><item><title>Git实用命令详解</title><link>http://www.gitfaq.cn/posts/Git_Utility_Commands_Explained_in_Detail/</link><pubDate>Thu, 19 Sep 2024 09:34:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Git_Utility_Commands_Explained_in_Detail/</guid><description>&lt;ol&gt;&#10;&lt;li&gt;将本地项目推送到远程仓库&lt;/li&gt;&#10;&lt;/ol&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;git init（初始化）&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git remote -v &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;查看已经关联的地址&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git add . （添加本地仓库）&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git commit -m &lt;span style="color:#5af78e"&gt;&amp;#34;第一次提交&amp;#34;&lt;/span&gt;（提交说明）&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git remote add origin xxx（关联远程仓库）&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git pull --rebase origin master（同步本地与远程仓库）&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git push -u origin master（提交远程仓库）-f：强制推送至远程&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol start="2"&gt;&#10;&lt;li&gt;Git回退到某个历史版本&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;找到要回退的版本号(右击项目&amp;ndash;&amp;gt; Git &amp;ndash;&amp;gt; Show History &amp;ndash;&amp;gt;选中要回退的版本&amp;ndash;&amp;gt;Copy Revision Number)&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;git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96 &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;后面为版本号&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol start="3"&gt;&#10;&lt;li&gt;把修改推到远程服务器&lt;/li&gt;&#10;&lt;/ol&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;git push -f -u origin master 或者 git push -f 强制同步远程仓库。&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol start="3"&gt;&#10;&lt;li&gt;修改项目关联远程地址方法&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;&lt;strong&gt;修改命令&lt;/strong&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;git remote set-url origin &amp;lt;url&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;手动修改&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;项目.git文件夹下，编辑config配置文件中url&lt;/p&gt;&#10;&lt;ol start="4"&gt;&#10;&lt;li&gt;Git 修改分支的名称&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;需要将分支br_rename_old修改为br_rename_new，执行如下步骤：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;执行命令&lt;code&gt;git checkout br_rename_old&lt;/code&gt;切换到br_rename_old分支，如果已经在这个分支下，可以不执行此步骤&lt;/li&gt;&#10;&lt;li&gt;执行命令&lt;code&gt;git pull origin br_rename_old&lt;/code&gt;将代码更新到和远程仓库一致&lt;/li&gt;&#10;&lt;li&gt;执行命令&lt;code&gt;git branch -m br_rename_old br_rename_new&lt;/code&gt;将本地仓库的br_rename_old的名称修改为br_rename_new&lt;/li&gt;&#10;&lt;li&gt;执行命令&lt;code&gt;git push --set-upstream origin br_rename_new&lt;/code&gt;将本地分支push到远程仓库&lt;/li&gt;&#10;&lt;li&gt;执行命令&lt;code&gt;git push origin --delete br_rename_old&lt;/code&gt;将远程分支br_rename_old删除&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;ol start="5"&gt;&#10;&lt;li&gt;Git 删除分支&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;我现在在dev20181018分支上，想删除dev20181018分支&lt;/p&gt;</description></item><item><title>修改Git远程URL</title><link>http://www.gitfaq.cn/posts/change_git_remote_url/</link><pubDate>Wed, 14 Aug 2024 09:34:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/change_git_remote_url/</guid><description>&lt;p&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;$ git remote -v&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;origin ssh://ov@git.zjq.xyz:29/ex.git &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;fetch&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;origin ssh://ov@git.zjq.xyz:29/ex.git &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;push&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&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;git remote set-url origin ssh://vo@git.jidan.org:29/ex.git&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&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;$ git remote -v&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;origin ssh://vo@git.jidan.org:29/ex.git &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;fetch&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;origin ssh://vo@git.jidan.org:29/ex.git &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;push&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;下来就可以Push最新修改&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;On branch master&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Your branch is ahead of &lt;span style="color:#5af78e"&gt;&amp;#39;origin/master&amp;#39;&lt;/span&gt; by &lt;span style="color:#ff9f43"&gt;1&lt;/span&gt; commit.&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;use &lt;span style="color:#5af78e"&gt;&amp;#34;git push&amp;#34;&lt;/span&gt; to publish your &lt;span style="color:#ff5c57"&gt;local&lt;/span&gt; commits&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nothing to commit, working tree clean&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;The authenticity of host &lt;span style="color:#5af78e"&gt;&amp;#39;[git.jidan.org]:29 ([8.8.8.8]:29)&amp;#39;&lt;/span&gt; can&lt;span style="color:#5af78e"&gt;&amp;#39;t be established.&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#5af78e"&gt;ED25519 key fingerprint is SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#5af78e"&gt;This host key is known by the following other names/addresses:&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#5af78e"&gt; ~/.ssh/known_hosts:6: [git.zjq.xyz]:29&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#5af78e"&gt;Are you sure you want to continue connecting (yes/no/[fingerprint])? yes&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#5af78e"&gt;Warning: Permanently added &amp;#39;&lt;/span&gt;&lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;git.jidan.org&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt;:29&lt;span style="color:#ff5c57"&gt;&amp;#39;&lt;/span&gt; &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;ED25519&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt; to the list of known hosts.&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Enumerating objects: 39, &lt;span style="color:#ff6ac1"&gt;done&lt;/span&gt;.&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Counting objects: 100% &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;39/39&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;, &lt;span style="color:#ff6ac1"&gt;done&lt;/span&gt;.&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Delta compression using up to &lt;span style="color:#ff9f43"&gt;4&lt;/span&gt; threads&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Compressing objects: 100% &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;23/23&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;, &lt;span style="color:#ff6ac1"&gt;done&lt;/span&gt;.&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Writing objects: 100% &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;23/23&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;, 10.86 MiB | 3.13 MiB/s, &lt;span style="color:#ff6ac1"&gt;done&lt;/span&gt;.&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Total &lt;span style="color:#ff9f43"&gt;23&lt;/span&gt; &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;delta 4&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;, reused &lt;span style="color:#ff9f43"&gt;0&lt;/span&gt; &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;delta 0&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;, pack-reused &lt;span style="color:#ff9f43"&gt;0&lt;/span&gt; &lt;span style="color:#ff6ac1"&gt;(&lt;/span&gt;from 0&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;To ssh://git.jidan.org:29/ex.git&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; 17ae34c..b8ae5da master -&amp;gt; master&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Push Done!&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote class=''&gt;&#10;&lt;p&gt;AI生成&lt;/p&gt;</description></item><item><title>如何最简便的搭建Git服务?</title><link>http://www.gitfaq.cn/posts/Simplified_solution_to_build_Git_services/</link><pubDate>Thu, 25 Jul 2024 17:18:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Simplified_solution_to_build_Git_services/</guid><description>&lt;p&gt;假设你有个绑定域名为&lt;code&gt;git.gitfaq.cn&lt;/code&gt;的服务器，并且可以通过SSH登录,计划将所有仓库(repository)放到&lt;code&gt;/data/git&lt;/code&gt;目录中。&lt;/p&gt;&#10;&lt;h3 id="建立仓库repository"&gt;建立仓库(repository)&lt;a class="anchor" href="#%e5%bb%ba%e7%ab%8b%e4%bb%93%e5%ba%93repository" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;本地新建仓库(repository)&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;mkdir repo.git&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git init&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;将仓库(repository)上传到服务器中。&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;scp -r repo.git user@git.gitfaq.cn:/data/git&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;成功后，即可通过&lt;code&gt;user@git.gitfaq.cn:/data/git/repo.git&lt;/code&gt;来访问远端仓库。&lt;/p&gt;&#10;&lt;h3 id="访问仓库repository"&gt;访问仓库(repository)&lt;a class="anchor" href="#%e8%ae%bf%e9%97%ae%e4%bb%93%e5%ba%93repository" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;建立好仓库后，拥有SSH权限的user就可以对&lt;code&gt;user@git.gitfaq.cn:/data/git/repo.git&lt;/code&gt;拥有操作权限。&lt;/p&gt;&#10;&lt;p&gt;还可以通过&lt;code&gt;git init --shared&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;ssh user@git.gitfaq.cn&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ff5c57"&gt;cd&lt;/span&gt; /data/git/repo.git&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git init --bare --shared&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果需要多个用户都对仓库有读写权限，又不能给每个用户在服务器上建立账户，那么提供 SSH 连接就是唯一的选择。 假设用来共享仓库的服务器已经安装了 SSH 服务，而且你通过它访问服务器。&lt;/p&gt;&#10;&lt;p&gt;以下几个方法可以使你给团队每个成员提供访问权:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;给每个人创建账号，为每个人运行一次 &lt;code&gt;adduser&lt;/code&gt;（或者 &lt;code&gt;useradd&lt;/code&gt;）并且设置密码。&lt;/li&gt;&#10;&lt;li&gt;在主机上建立一个 &lt;code&gt;git&lt;/code&gt; 公用账户，每个需要权限的人发一个 &lt;strong&gt;SSH 公钥&lt;/strong&gt;， 然后将其加入 &lt;code&gt;git&lt;/code&gt; 账户的 &lt;code&gt;~/.ssh/authorized_keys&lt;/code&gt; 文件。 这样一来，所有人都将通过 &lt;code&gt;git&lt;/code&gt;账户访问主机。&lt;/li&gt;&#10;&lt;li&gt;让 SSH 服务器通过某个 LDAP 服务，或者其他已经设定好的集中授权机制，来进行授权。 只要每个用户可以获得主机的 shell 访问权限，任何 SSH 授权机制你都可视为是有效的。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;blockquote class=''&gt;&#10;&lt;p&gt;AI生成&lt;/p&gt;&#10;&lt;/blockquote&gt;</description></item><item><title>初次使用 Git 的一些配置</title><link>http://www.gitfaq.cn/posts/Some_configurations_for_the_first_time_using_Git/</link><pubDate>Thu, 25 Jul 2024 16:46:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Some_configurations_for_the_first_time_using_Git/</guid><description>&lt;p&gt;安装完Git，你会想要做几件事来定制你的 Git 环境。 每台计算机上只需要配置一次，程序升级时会保留配置信息。 你可以在任何时候再次通过运行命令来修改它们。&lt;/p&gt;&#10;&lt;h3 id="git配置管理"&gt;git配置管理&lt;a class="anchor" href="#git%e9%85%8d%e7%bd%ae%e7%ae%a1%e7%90%86" aria-label="Link"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Git 自带一个 &lt;code&gt;git config&lt;/code&gt; 的工具来帮助设置控制 Git 外观和行为的配置变量。 这些变量存储在三个不同的位置：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;&lt;code&gt;/etc/gitconfig&lt;/code&gt; 文件: 包含系统上所有用户及他们仓库的通用配置。 如果在执行 &lt;code&gt;git config&lt;/code&gt; 时带上 &lt;code&gt;--system&lt;/code&gt; 选项，那么它就会读写该文件中的配置变量。 （需要管理员或超级用户权限）&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;&lt;code&gt;~/.gitconfig&lt;/code&gt; 或 &lt;code&gt;~/.config/git/config&lt;/code&gt; 文件：只针对当前用户。 你可以传递 &lt;code&gt;--global&lt;/code&gt; 选项让 Git 读写此文件，这会对你系统上 所有 的仓库生效。&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;当前使用仓库的 Git 目录中的 &lt;code&gt;config&lt;/code&gt; 文件（即 &lt;code&gt;.git/config&lt;/code&gt;）：针对当前仓库。 你可以传递 &lt;code&gt;--local&lt;/code&gt; 选项让 Git 强制读写此文件，虽然默认情况下用的就是它。 （需要进入某个 Git 仓库中才能让该选项生效。）&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;每一个级别会覆盖上一级别的配置，所以 &lt;code&gt;.git/config&lt;/code&gt; 的配置变量会覆盖 &lt;code&gt;/etc/gitconfig&lt;/code&gt; 中的配置变量。&lt;/p&gt;&#10;&lt;p&gt;在 Windows 系统中，Git 会查找 &lt;code&gt;$HOME&lt;/code&gt; 目录下（一般情况下是 &lt;strong&gt;C:\Users$USER&lt;/strong&gt; ）的 &lt;code&gt;.gitconfig&lt;/code&gt; 文件。 Git 同样也会寻找 &lt;code&gt;/etc/gitconfig&lt;/code&gt; 文件，但只限于 MSys 的根目录下，即安装 Git 时所选的目标位置。 如果你在 Windows 上使用 Git 2.x 以后的版本，那么还有一个系统级的配置文件，Windows XP 上在 &lt;code&gt;C:\Documents and Settings\All Users\Application Data\Git\config&lt;/code&gt; ，Windows Vista 及其以后的版本在 &lt;code&gt;C:\ProgramData\Git\config&lt;/code&gt; 。此文件只能以管理员权限通过 &lt;code&gt;git config -f &amp;lt;file&amp;gt;&lt;/code&gt; 来修改。&lt;/p&gt;</description></item><item><title>zsh中使用git的一些配置建议</title><link>http://www.gitfaq.cn/posts/Some_configuration_suggestions_for_using_git_in_zsh/</link><pubDate>Thu, 25 Jul 2024 11:40:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Some_configuration_suggestions_for_using_git_in_zsh/</guid><description>&lt;p&gt;Zsh 为 Git 提供了一个 Tab 补全库。 想要使用它，只需在你的 .zshrc 中执行 autoload -Uz compinit &amp;amp;&amp;amp; compinit 即可。 相对于 Bash，Zsh 的接口更加强大：&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;$ git che&amp;lt;Tab&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;check-attr -- 显示 gitattributes 信息&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;check-ref-format -- 检查引用名称是否符合规范&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;checkout -- 从工作区中检出分支或路径&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;checkout-index -- 从暂存区拷贝文件至工作目录&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cherry -- 查找没有被合并至上游的提交&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cherry-pick -- 从一些已存在的提交中应用更改&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;有歧义的 Tab 补全不仅会被列出，它们还会有帮助性的描述，你可以通过不断敲击 Tab 以图形方式浏览补全列表。 该功能可用于 Git 命令、它们的参数和在仓库中内容的名称（例如 refs 和 remotes），还有文件名和其他所有 Zsh 知道如何去补全的项目。&lt;/p&gt;&#10;&lt;p&gt;Zsh 提供了一个从版本控制系统中获取信息的框架，叫做 vcs_info 。 把如下代码添加至你的 ~/.zshrc 文件中，就可以在右侧显示分支名称：&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;autoload -Uz vcs_info&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;precmd_vcs_info&lt;span style="color:#ff6ac1"&gt;()&lt;/span&gt; &lt;span style="color:#ff6ac1"&gt;{&lt;/span&gt; vcs_info &lt;span style="color:#ff6ac1"&gt;}&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ff5c57"&gt;precmd_functions&lt;/span&gt;&lt;span style="color:#ff6ac1"&gt;+=(&lt;/span&gt; precmd_vcs_info &lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;setopt prompt_subst&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#ff5c57"&gt;RPROMPT&lt;/span&gt;&lt;span style="color:#ff6ac1"&gt;=&lt;/span&gt;&lt;span style="color:#5af78e"&gt;\$&lt;/span&gt;vcs_info_msg_0_&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#78787e"&gt;# PROMPT=\$vcs_info_msg_0_&amp;#39;%# &amp;#39;&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;zstyle &lt;span style="color:#5af78e"&gt;&amp;#39;:vcs_info:git:*&amp;#39;&lt;/span&gt; formats &lt;span style="color:#5af78e"&gt;&amp;#39;%b&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;当你的命令行位于一个 Git 仓库目录时，在任何时候，都可以在命令行窗口右侧显示当前分支。 （当然也可以在左侧显示，只需把上面 PROMPT 的注释去掉即可。） 它看起来像这样：&lt;/p&gt;</description></item><item><title>为什么windows下文本文件被检测为二进制文件？</title><link>http://www.gitfaq.cn/posts/Why_are_text_files_detected_as_binary_files_in_Windows/</link><pubDate>Thu, 25 Jul 2024 10:23:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Why_are_text_files_detected_as_binary_files_in_Windows/</guid><description>&lt;p&gt;当您将文本文件存储为 UTF-8 时，Git 效果最佳。Windows 上的许多程序都支持 UTF-8，但有些程序不支持，并且仅使用小端 UTF-16 格式，Git 将其检测为二进制文件。如果您无法在程序中使用 UTF-8，则可以指定一个工作树编码，指示应使用哪个编码签出您的文件，同时仍将这些文件作为 UTF-8 存储在存储库中。这允许像 &lt;a href="http://www.gitfaq.cn/tags/git-diff"&gt;git-diff&lt;/a&gt;这样的工具按预期工作，同时仍允许您的工具工作。&lt;/p&gt;&#10;&lt;p&gt;为此，您可以使用具有 &lt;code&gt;working-tree-encoding&lt;/code&gt; 属性的 &lt;a href="http://www.gitfaq.cn/tags/gitattributes/"&gt;gitattributes&lt;/a&gt; 模式。例如，以下模式将所有 C 文件设置为使用 UTF-16LE-BOM，这是 Windows 上常见的编码&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;*.c&#9;working-tree-encoding&lt;span style="color:#ff6ac1"&gt;=&lt;/span&gt;UTF-16LE-BOM&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;您需要运行 &lt;code&gt;git add --renormalize&lt;/code&gt; 以使其生效。请注意，如果您在跨平台使用的项目上进行这些更改，您可能希望在按用户配置的文件中或在 &lt;code&gt;$GIT_DIR/info/attributes&lt;/code&gt; 中进行更改，因为在存储库中的 &lt;code&gt;.gitattributes&lt;/code&gt; 文件中进行更改将适用于存储库的所有用户。&lt;/p&gt;&#10;&lt;p&gt;另请参阅以下条目以获取有关规范换行符的信息，并参阅 &lt;a href="http://www.gitfaq.cn/tags/gitattributes/"&gt;gitattributes&lt;/a&gt;以获取有关属性文件的更多信息。&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;via &lt;a href="https://gitfaq.org/1/01/how-do-i-add-only-a-portion-of-a-file/"&gt;https://gitfaq.org/1/01/how-do-i-add-only-a-portion-of-a-file/&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><item><title>为什么我有一个总是被修改的文件?</title><link>http://www.gitfaq.cn/posts/Why_do_I_have_a_file_that_is_always_modified/</link><pubDate>Thu, 25 Jul 2024 10:04:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Why_do_I_have_a_file_that_is_always_modified/</guid><description>&lt;p&gt;在内部，Git 始终将文件名存储为字节序列，并且不执行任何编码或大小写转换。但是，Windows 和 macOS 默认情况下都对文件名执行大小写转换。因此，最终可能会出现多个文件或目录，其名称仅在大小写上有所不同。Git 可以很好地处理这种情况，但文件系统只能存储其中一个文件，因此当 Git 读取另一个文件以查看其内容时，它看起来已被修改。&lt;/p&gt;&#10;&lt;p&gt;最好删除其中一个文件，以便您只有一个文件。您可以使用以下命令（假设在其他干净的工作树上存在两个文件 &lt;code&gt;AFile.txt&lt;/code&gt; 和 &lt;code&gt;afile.txt&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;$ git rm --cached AFile.txt&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$ git commit -m &lt;span style="color:#5af78e"&gt;&amp;#39;Remove files conflicting in case&amp;#39;&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$ git checkout .&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;这样可以避免接触磁盘，但会删除附加文件。你的项目可能更喜欢采用命名约定，例如全小写名称，以避免此问题再次发生；可以使用&lt;code&gt;pre-receive&lt;/code&gt;钩子或作为持续集成 (CI) 系统的一部分来检查此类约定。&lt;/p&gt;&#10;&lt;p&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;$ git add --renormalize .&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&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><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><item><title>Windows下如何安装Git?</title><link>http://www.gitfaq.cn/posts/windows_install_git/</link><pubDate>Thu, 25 Jul 2024 09:34:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/windows_install_git/</guid><description>&lt;p&gt;Windows下安装Git需要在&lt;a href="https://git-scm.com/download"&gt;https://git-scm.com/download&lt;/a&gt;下载&lt;strong&gt;git for windows&lt;/strong&gt;安装包&lt;/p&gt;&#10;&lt;p&gt;进入以上页面后，找到如下处，点击&lt;strong&gt;Download for Windows&lt;/strong&gt;开始下载&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="http://www.gitfaq.cn/imgs/20240725093629.png" alt="Download for Windows" /&gt;&lt;/p&gt;&#10;&lt;p&gt;随后进入开始下载页面，但是从github源地址下载，国内访问异常的话可以 &lt;a href="https://url98.ctfile.com/f/18418398-1429268911-7a6859?p=3705"&gt;点击这里&lt;/a&gt; 通过国内线路下载。&lt;/p&gt;&#10;&lt;h2 id="git-scm历史版本"&gt;git scm历史版本&lt;a class="anchor" href="#git-scm%e5%8e%86%e5%8f%b2%e7%89%88%e6%9c%ac" aria-label="Link"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://url98.ctfile.com/f/18418398-1429268911-7a6859?p=3705"&gt;Git-2.47.0.2-32-bit.exe&lt;/a&gt; (访问密码: 3705)&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://url98.ctfile.com/f/18418398-1429268911-7a6859?p=3705"&gt;Git-2.47.0.2-32-bit.exe&lt;/a&gt; (访问密码: 3705)&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;安装完成后，在任意目录右键，点击&lt;code&gt;Open Git Bash here&lt;/code&gt;打开terminal，输入&lt;code&gt;git version&lt;/code&gt;查看当前git版本&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;alair@e64 MINGW64 /d/dt2&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;$ git version&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git version 2.45.2.windows.1&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote class=''&gt;&#10;&lt;p&gt;AI生成&lt;/p&gt;&#10;&lt;/blockquote&gt;</description></item><item><title>Git中fetch和pull有什么不同之处？</title><link>http://www.gitfaq.cn/posts/difference-between-fetch-and-pull/</link><pubDate>Wed, 24 Jul 2024 17:20:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/difference-between-fetch-and-pull/</guid><description>&lt;p&gt;&lt;code&gt;git pull [remote] [branch] &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;## 从远程仓库获取最新修改&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git fetch &lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;remote&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt; &lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;branch&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt; &#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#78787e"&gt;## 合并最新修改&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git merge &lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;remote&lt;span style="color:#ff6ac1"&gt;][&lt;/span&gt;/branch&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;git pull --rebase [remote] [branch]&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;## 从远程仓库获取最新修改&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git fetch &lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;remote&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt; &lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;branch&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git rebase &lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;remote&lt;span style="color:#ff6ac1"&gt;][&lt;/span&gt;/branch&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;em&gt;via &lt;a href="https://gitfaq.org/1/01/what-is-the-difference-between-fetch-and-pull/"&gt;https://gitfaq.org/1/01/what-is-the-difference-between-fetch-and-pull/&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><item><title>如何仅添加文件的部分内容？</title><link>http://www.gitfaq.cn/posts/add_only_a_portion_of_a_file/</link><pubDate>Wed, 24 Jul 2024 16:50:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/add_only_a_portion_of_a_file/</guid><description>&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;git add --patch &amp;lt;file&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;使用该命令会打开一个交互式界面，将每处不同的地区按照区块(hunk)的方式逐一显示，并提示你如何处理，从而达到仅添加部分内容的目的。&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;git add --patch package.json&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;diff --git a/package.json b/package.json&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;index 7a558a3..e03ce3f &lt;span style="color:#ff9f43"&gt;100644&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;--- a/package.json&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+++ b/package.json&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;@@ -2,7 +2,6 @@&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#5af78e"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#5af78e"&gt;&amp;#34;package&amp;#34;&lt;/span&gt;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#5af78e"&gt;&amp;#34;version&amp;#34;&lt;/span&gt;: &lt;span style="color:#5af78e"&gt;&amp;#34;0.4.3&amp;#34;&lt;/span&gt;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#5af78e"&gt;&amp;#34;description&amp;#34;&lt;/span&gt;: &lt;span style="color:#5af78e"&gt;&amp;#34;this is an example package&amp;#34;&lt;/span&gt;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;- &lt;span style="color:#5af78e"&gt;&amp;#34;keywords&amp;#34;&lt;/span&gt;: &lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;&lt;span style="color:#5af78e"&gt;&amp;#34;key&amp;#34;&lt;/span&gt;, &lt;span style="color:#5af78e"&gt;&amp;#34;middleware&amp;#34;&lt;/span&gt;, &lt;span style="color:#5af78e"&gt;&amp;#34;connect&amp;#34;&lt;/span&gt;&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#5af78e"&gt;&amp;#34;repository&amp;#34;&lt;/span&gt;: &lt;span style="color:#5af78e"&gt;&amp;#34;git://github.com/foo/bar.git&amp;#34;&lt;/span&gt;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#5af78e"&gt;&amp;#34;author&amp;#34;&lt;/span&gt;: &lt;span style="color:#5af78e"&gt;&amp;#34;jxt &amp;lt;info@gitfaq.cn&amp;gt; (http://gitfaq.cn)&amp;#34;&lt;/span&gt;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#5af78e"&gt;&amp;#34;repository&amp;#34;&lt;/span&gt;: &lt;span style="color:#5af78e"&gt;&amp;#34;git://github.com/foo/bar&amp;#34;&lt;/span&gt;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Stage this hunk &lt;span style="color:#ff6ac1"&gt;[&lt;/span&gt;y,n,q,a,d,/,j,J,g,e,?&lt;span style="color:#ff6ac1"&gt;]&lt;/span&gt;? y&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;Stage this hunk [y,n,q,a,d,/,j,J,g,e,?]? &lt;/code&gt; 提示如何处理当前区块(hunk)，输入&lt;code&gt;?&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-text" data-lang="text"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;y - stage this hunk 暂存此区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;n - do not stage this hunk 不暂存此区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;q - quit; do not stage this hunk or any of the remaining ones 退出；不暂存包括此块在内的剩余的区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;a - stage this hunk and all later hunks in the file 暂存此块与此文件后面所有的区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;d - do not stage this hunk or any of the later hunks in the file 不暂存此块与此文件后面所有的区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;g - select a hunk to go to 选择并跳转至一个区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;/ - search for a hunk matching the given regex 搜索与给定正则表达示匹配的区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;j - leave this hunk undecided, see next undecided hunk 暂不决定，转至下一个未决定的区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;J - leave this hunk undecided, see next hunk 暂不决定，转至下一个区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;k - leave this hunk undecided, see previous undecided hunk 暂不决定，转至上一个未决定的区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;K - leave this hunk undecided, see previous hunk 暂不决定，转至上一个区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;s - split the current hunk into smaller hunks 将当前的区块分割成多个较小的区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;e - manually edit the current hunk 手动编辑当前的区块&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;? - print help 输出帮助&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;em&gt;via &lt;a href="https://gitfaq.org/1/01/how-do-i-add-only-a-portion-of-a-file/"&gt;https://gitfaq.org/1/01/how-do-i-add-only-a-portion-of-a-file/&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Git如何设置代理?</title><link>http://www.gitfaq.cn/posts/Git_proxy_config/</link><pubDate>Wed, 24 Jul 2024 16:43:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Git_proxy_config/</guid><description>&lt;p&gt;GIT配置代理如下设置，&lt;code&gt;socks5&lt;/code&gt;为代理协议，可配置http/https/socks5等。&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; git config --global http.proxy socks5://127.0.0.1:20170 &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote class=''&gt;&#10;&lt;p&gt;AI生成&lt;/p&gt;&#10;&lt;/blockquote&gt;</description></item><item><title>git writing objects 卡死怎么办?</title><link>http://www.gitfaq.cn/posts/git_writing_objects_is_stuck/</link><pubDate>Wed, 24 Jul 2024 16:30:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/git_writing_objects_is_stuck/</guid><description>&lt;p&gt;git writing objects时常卡死，可以试着将远端地址改为ssh方式再重新push&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;git remote set-url origin git@gitlab.com:username/repo.git&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote class=''&gt;&#10;&lt;p&gt;AI生成&lt;/p&gt;&#10;&lt;/blockquote&gt;</description></item><item><title>如何归档备份Git内容?</title><link>http://www.gitfaq.cn/posts/Git_archive_backup/</link><pubDate>Wed, 24 Jul 2024 15:53:12 +0800</pubDate><guid>http://www.gitfaq.cn/posts/Git_archive_backup/</guid><description>&lt;p&gt;想将当前版本的内容归档并备份，可以使用&lt;code&gt;git archive&lt;/code&gt;命令来实现&lt;/p&gt;&#10;&lt;p&gt;归档当前master，然后压缩成zip文件。&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;git archive --format&lt;span style="color:#ff6ac1"&gt;=&lt;/span&gt;zip --output&lt;span style="color:#ff6ac1"&gt;=&lt;/span&gt;repobak_&lt;span style="color:#ff6ac1"&gt;$(&lt;/span&gt;date +%Y-%m-%d&lt;span style="color:#ff6ac1"&gt;)&lt;/span&gt;.zip master&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote class=''&gt;&#10;&lt;p&gt;AI生成&lt;/p&gt;&#10;&lt;/blockquote&gt;</description></item></channel></rss>