<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>https://wiki.linuxsa.org/index.php?action=history&amp;feed=atom&amp;title=Git%E5%9F%BA%E7%A1%80%E5%8F%8A%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4</id>
	<title>Git基础及常用命令 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.linuxsa.org/index.php?action=history&amp;feed=atom&amp;title=Git%E5%9F%BA%E7%A1%80%E5%8F%8A%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4"/>
	<link rel="alternate" type="text/html" href="https://wiki.linuxsa.org/index.php?title=Git%E5%9F%BA%E7%A1%80%E5%8F%8A%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4&amp;action=history"/>
	<updated>2026-04-19T10:47:53Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://wiki.linuxsa.org/index.php?title=Git%E5%9F%BA%E7%A1%80%E5%8F%8A%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4&amp;diff=1610&amp;oldid=prev</id>
		<title>Evan：​/* date */</title>
		<link rel="alternate" type="text/html" href="https://wiki.linuxsa.org/index.php?title=Git%E5%9F%BA%E7%A1%80%E5%8F%8A%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4&amp;diff=1610&amp;oldid=prev"/>
		<updated>2025-09-20T14:32:56Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;date&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;zh-Hans-CN&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←上一版本&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2025年9月20日 (六) 14:32的版本&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;第1行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第1行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=date=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=date=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Sep 2024&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Sep 2024&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;#git &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;➜  gittest git:(issue1) git checkout main &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;切换到分支 &#039;main&#039;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;➜  gittest git:(main) cat myfile.txt &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;love&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;➜  gittest git:(main) git checkout issue1&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;切换到分支 &#039;issue1&#039;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;➜  gittest git:(issue1) cat  myfile.txt &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;love&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;issue1&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;全B站最傻瓜的Git入门精讲课&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https://www.bilibili.com/video/BV1WH4y1H7zV/?spm_id_from=333.788.recommend_more_video.4&amp;amp;vd_source=e3e41ea2b1d70e0e3a6a0372ee88d714&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https://github.com/cengxiye/learn-git-2024/blob/main/learn-git-2024.ps1&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=常用命令=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=常用命令=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key my_wiki:diff:1.41:old-418:rev-1610:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Evan</name></author>
	</entry>
	<entry>
		<id>https://wiki.linuxsa.org/index.php?title=Git%E5%9F%BA%E7%A1%80%E5%8F%8A%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4&amp;diff=418&amp;oldid=prev</id>
		<title>Evan：​/* 解决冲突 */</title>
		<link rel="alternate" type="text/html" href="https://wiki.linuxsa.org/index.php?title=Git%E5%9F%BA%E7%A1%80%E5%8F%8A%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4&amp;diff=418&amp;oldid=prev"/>
		<updated>2025-04-10T03:16:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;解决冲突&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=date=&lt;br /&gt;
Sep 2024&lt;br /&gt;
=常用命令=&lt;br /&gt;
&lt;br /&gt;
[https://liaoxuefeng.com/books/git/conclusion/git-cheat-sheet.pdf Git Cheat Sheet 打印出来吧]&lt;br /&gt;
==日常使用==&lt;br /&gt;
[https://www.runoob.com/w3cnote/git-five-minutes-tutorial.html Git五分钟教程]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
添加 key 后 clone &lt;br /&gt;
&lt;br /&gt;
#配置 &lt;br /&gt;
 git config --global user.name &amp;quot;evan886&amp;quot;&lt;br /&gt;
  git config --global user.email &amp;quot;evan886@gmail.com&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#日常用得最多就这几个了&lt;br /&gt;
git pull origin master&lt;br /&gt;
git add youfile &lt;br /&gt;
git commit -m &amp;quot; &amp;quot;&lt;br /&gt;
git push origin master&lt;br /&gt;
&lt;br /&gt;
note &lt;br /&gt;
当我们修改了很多文件，而不想每一个都add，想commit自动来提交本地修改，我们可以使用-a标识。&lt;br /&gt;
&lt;br /&gt;
git commit -a -m &amp;quot;Changed some files&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
有时提交不成 冲突了 请用 git rm -f  filename&lt;br /&gt;
&lt;br /&gt;
…or create a new repository on the command line&lt;br /&gt;
echo &amp;quot;# learn-english&amp;quot; &amp;gt;&amp;gt; README.md&lt;br /&gt;
git init&lt;br /&gt;
git add README.md&lt;br /&gt;
git commit -m &amp;quot;first commit&amp;quot;&lt;br /&gt;
git remote add origin git@github.com:evan886/learn-english.git&lt;br /&gt;
git push -u origin master&lt;br /&gt;
&lt;br /&gt;
…or push an existing repository from the command line&lt;br /&gt;
git remote add origin git@github.com:evan886/learn-english.git&lt;br /&gt;
git push -u origin master&lt;br /&gt;
&lt;br /&gt;
…or import code from another repository&lt;br /&gt;
&lt;br /&gt;
You can initialize this repository with code from a Subversion, Mercurial, or TFS project.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Git 新加了两个命令：&lt;br /&gt;
&lt;br /&gt;
    git switch用于切换分支&lt;br /&gt;
    git restore用于恢复原样&lt;br /&gt;
&lt;br /&gt;
两者可以取代 git checkout。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#创建分支命令：&lt;br /&gt;
git branch (branchname)&lt;br /&gt;
&lt;br /&gt;
#切换分支命令:&lt;br /&gt;
git checkout (branchname)&lt;br /&gt;
&lt;br /&gt;
               git branch dev &lt;br /&gt;
evan@myxps:~/github/learn-c$ git checkout dev &lt;br /&gt;
M	co&lt;br /&gt;
M	turtle/src/3.c&lt;br /&gt;
切换到分支 &amp;#039;dev&amp;#039;&lt;br /&gt;
&lt;br /&gt;
git 退回上一个版本&lt;br /&gt;
git reset --hard HEAD^&lt;br /&gt;
&lt;br /&gt;
退回单个文件 &lt;br /&gt;
 git log  p128.groovy &lt;br /&gt;
➜  devops6-shared-library git:(main) git checkout 7a7dfa905067e92f913e593f2cdcfee87ba70538 p128.groovy &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=打标签=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
在Git中打标签非常简单，首先，切换到需要打标签的分支上：&lt;br /&gt;
&lt;br /&gt;
$ git branch&lt;br /&gt;
* dev&lt;br /&gt;
  master&lt;br /&gt;
$ git checkout master&lt;br /&gt;
Switched to branch &amp;#039;master&amp;#039;&lt;br /&gt;
然后，敲命令git tag &amp;lt;name&amp;gt;就可以打一个新标签：&lt;br /&gt;
&lt;br /&gt;
$ git tag v1.0&lt;br /&gt;
可以用命令git tag查看所有标签：&lt;br /&gt;
&lt;br /&gt;
$ git tag&lt;br /&gt;
v1.0&lt;br /&gt;
&lt;br /&gt;
###&lt;br /&gt;
git log &lt;br /&gt;
➜  myweb git:(main) git tag 1.0 &lt;br /&gt;
➜  myweb git:(main) git tag &lt;br /&gt;
➜  myweb git:(main) git tag -a v1.0 -m &amp;quot;my version 1.0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
(main) git tag &lt;br /&gt;
➜  myweb git:(main) git show 1.0&lt;br /&gt;
➜  myweb git:(main) git show v1.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==.gitignore 文件——如何在 Git 中忽略文件和文件夹==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
adj110 是我django mount  到xps的目录 &lt;br /&gt;
&lt;br /&gt;
git:(master) cat .gitignore &lt;br /&gt;
project/laoqi/adj110&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=git将本地代码提交到远程仓库=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#以我的i3wm配置文件作例子&lt;br /&gt;
# create a new repository on the command line&lt;br /&gt;
echo &amp;quot;# myi3&amp;quot; &amp;gt;&amp;gt; README.md&lt;br /&gt;
git init&lt;br /&gt;
git add README.md&lt;br /&gt;
git commit -m &amp;quot;first commit&amp;quot;&lt;br /&gt;
git remote add origin git@github.com:evan886/myi3.git&lt;br /&gt;
git push -u origin master&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[https://blog.csdn.net/nhgxxyy198990/article/details/80433005 git将本地代码提交到远程仓库]&lt;br /&gt;
&lt;br /&gt;
=分支branch=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
in) git branch testing  #创建&lt;br /&gt;
➜  myweb git:(main) git branch &lt;br /&gt;
* main&lt;br /&gt;
  testing&lt;br /&gt;
(END)&lt;br /&gt;
&lt;br /&gt;
git checkout testing &lt;br /&gt;
切换到分支 &amp;#039;testing&amp;#039;&lt;br /&gt;
&lt;br /&gt;
git branch&lt;br /&gt;
  main&lt;br /&gt;
* testing&lt;br /&gt;
(END)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=clone 指定分支=&lt;br /&gt;
 -b, --branch &amp;lt;分支&amp;gt;   检出 &amp;lt;分支&amp;gt; 而不是远程 HEAD&lt;br /&gt;
 git clone -b day-08  https://github.com/michaelliao/awesome-python3-webapp.git day8&lt;br /&gt;
&lt;br /&gt;
=git分支的合并=&lt;br /&gt;
 在git中，可以使用git merge 和git rebase两个命令来进行分支的合并&lt;br /&gt;
[https://blog.csdn.net/hudashi/article/details/7668798 git分支的合并]&lt;br /&gt;
&lt;br /&gt;
=合并分支到master/main上 =&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
现在在dev分支上，可以用下面命令查看当前分支&lt;br /&gt;
git branch&lt;br /&gt;
&lt;br /&gt;
刚开发完项目，执行了下列命令&lt;br /&gt;
git  add .&lt;br /&gt;
git  commit -m &amp;#039;dev&amp;#039;&lt;br /&gt;
git push -u origin dev&lt;br /&gt;
&lt;br /&gt;
把dev分支的代码合并到master分支上 该如何？&lt;br /&gt;
首先切换到master分支上&lt;br /&gt;
git  checkout master&lt;br /&gt;
&lt;br /&gt;
多人开发的话 需要把远程master上的代码pull下来&lt;br /&gt;
git pull origin master&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
我们把dev分支的代码合并到master上&lt;br /&gt;
git  merge dev&lt;br /&gt;
&lt;br /&gt;
然后查看状态&lt;br /&gt;
git status&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On branch master&lt;br /&gt;
Your branch is ahead of &amp;#039;origin/master&amp;#039; by 12 commits.&lt;br /&gt;
  (use &amp;quot;git push&amp;quot; to publish your local commits)&lt;br /&gt;
nothing to commit, working tree clean&lt;br /&gt;
&lt;br /&gt;
上面的意思就是你有12个commit，需要push到远程master上&lt;br /&gt;
执行下面命令即可&lt;br /&gt;
&lt;br /&gt;
git push origin master&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=解决冲突 =&lt;br /&gt;
如果你合并代码时遇到了冲突，你会怎么做？&lt;br /&gt;
&lt;br /&gt;
✅ 答案：&lt;br /&gt;
当合并两个分支时出现冲突（例如：git merge dev），我会按照以下步骤处理：&lt;br /&gt;
&lt;br /&gt;
    Git 会提示有冲突的文件（例如 conflict.txt）。&lt;br /&gt;
&lt;br /&gt;
    打开文件，手动解决冲突，保留需要的内容。&lt;br /&gt;
&lt;br /&gt;
    git add conflict.txt 标记解决冲突。&lt;br /&gt;
&lt;br /&gt;
    git commit 完成合并。&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
准备新的feature1分支，继续我们的新分支开发：&lt;br /&gt;
&lt;br /&gt;
$ git switch -c feature1&lt;br /&gt;
Switched to a new branch &amp;#039;feature1&amp;#039;&lt;br /&gt;
修改readme.txt最后一行，改为：&lt;br /&gt;
&lt;br /&gt;
Creating a new branch is quick AND simple.&lt;br /&gt;
在feature1分支上提交：&lt;br /&gt;
&lt;br /&gt;
$ git add readme.txt&lt;br /&gt;
&lt;br /&gt;
$ git commit -m &amp;quot;AND simple&amp;quot;&lt;br /&gt;
[feature1 14096d0] AND simple&lt;br /&gt;
 1 file changed, 1 insertion(+), 1 deletion(-)&lt;br /&gt;
切换到master分支：&lt;br /&gt;
&lt;br /&gt;
$ git switch master&lt;br /&gt;
Switched to branch &amp;#039;master&amp;#039;&lt;br /&gt;
Your branch is ahead of &amp;#039;origin/master&amp;#039; by 1 commit.&lt;br /&gt;
  (use &amp;quot;git push&amp;quot; to publish your local commits)&lt;br /&gt;
Git还会自动提示我们当前master分支比远程的master分支要超前1个提交。&lt;br /&gt;
&lt;br /&gt;
在master分支上把readme.txt文件的最后一行改为：&lt;br /&gt;
&lt;br /&gt;
Creating a new branch is quick &amp;amp; simple.&lt;br /&gt;
提交：&lt;br /&gt;
&lt;br /&gt;
$ git add readme.txt &lt;br /&gt;
$ git commit -m &amp;quot;&amp;amp; simple&amp;quot;&lt;br /&gt;
[master 5dc6824] &amp;amp; simple&lt;br /&gt;
 1 file changed, 1 insertion(+), 1 deletion(-)&lt;br /&gt;
现在，master分支和feature1分支各自都分别有新的提交，变成了这样：&lt;br /&gt;
&lt;br /&gt;
git-br-feature1 图片没显示&lt;br /&gt;
&lt;br /&gt;
这种情况下，Git无法执行“快速合并”，只能试图把各自的修改合并起来，但这种合并就可能会有冲突，我们试试看：&lt;br /&gt;
&lt;br /&gt;
$ git merge feature1&lt;br /&gt;
Auto-merging readme.txt&lt;br /&gt;
CONFLICT (content): Merge conflict in readme.txt&lt;br /&gt;
Automatic merge failed; fix conflicts and then commit the result.&lt;br /&gt;
果然冲突了！Git告诉我们，readme.txt文件存在冲突，必须手动解决冲突后再提交。git status也可以告诉我们冲突的文件：&lt;br /&gt;
&lt;br /&gt;
$ git status&lt;br /&gt;
On branch master&lt;br /&gt;
Your branch is ahead of &amp;#039;origin/master&amp;#039; by 2 commits.&lt;br /&gt;
  (use &amp;quot;git push&amp;quot; to publish your local commits)&lt;br /&gt;
&lt;br /&gt;
You have unmerged paths.&lt;br /&gt;
  (fix conflicts and run &amp;quot;git commit&amp;quot;)&lt;br /&gt;
  (use &amp;quot;git merge --abort&amp;quot; to abort the merge)&lt;br /&gt;
&lt;br /&gt;
Unmerged paths:&lt;br /&gt;
  (use &amp;quot;git add &amp;lt;file&amp;gt;...&amp;quot; to mark resolution)&lt;br /&gt;
&lt;br /&gt;
	both modified:   readme.txt&lt;br /&gt;
&lt;br /&gt;
no changes added to commit (use &amp;quot;git add&amp;quot; and/or &amp;quot;git commit -a&amp;quot;)&lt;br /&gt;
我们可以直接查看readme.txt的内容：&lt;br /&gt;
&lt;br /&gt;
Git is a distributed version control system.&lt;br /&gt;
Git is free software distributed under the GPL.&lt;br /&gt;
Git has a mutable index called stage.&lt;br /&gt;
Git tracks changes of files.&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt; HEAD&lt;br /&gt;
Creating a new branch is quick &amp;amp; simple.&lt;br /&gt;
=======&lt;br /&gt;
Creating a new branch is quick AND simple.&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; feature1&lt;br /&gt;
Git用&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;，=======，&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;标记出不同分支的内容，我们修改如下后保存：&lt;br /&gt;
&lt;br /&gt;
Creating a new branch is quick and simple.&lt;br /&gt;
再提交：&lt;br /&gt;
&lt;br /&gt;
$ git add readme.txt &lt;br /&gt;
$ git commit -m &amp;quot;conflict fixed&amp;quot;&lt;br /&gt;
[master cf810e4] conflict fixed&lt;br /&gt;
现在，master分支和feature1分支变成了下图所示：&lt;br /&gt;
&lt;br /&gt;
git-br-conflict-merged&lt;br /&gt;
&lt;br /&gt;
用带参数的git log也可以看到分支的合并情况：&lt;br /&gt;
&lt;br /&gt;
$ git log --graph --pretty=oneline --abbrev-commit&lt;br /&gt;
*   cf810e4 (HEAD -&amp;gt; master) conflict fixed&lt;br /&gt;
|\  &lt;br /&gt;
| * 14096d0 (feature1) AND simple&lt;br /&gt;
* | 5dc6824 &amp;amp; simple&lt;br /&gt;
|/  &lt;br /&gt;
* b17d20e branch test&lt;br /&gt;
* d46f35e (origin/master) remove test.txt&lt;br /&gt;
* b84166e add test.txt&lt;br /&gt;
* 519219b git tracks changes&lt;br /&gt;
* e43a48b understand how stage works&lt;br /&gt;
* 1094adb append GPL&lt;br /&gt;
* e475afc add distributed&lt;br /&gt;
* eaadf4e wrote a readme file&lt;br /&gt;
最后，删除feature1分支：&lt;br /&gt;
&lt;br /&gt;
$ git branch -d feature1&lt;br /&gt;
Deleted branch feature1 (was 14096d0).&lt;br /&gt;
工作完成。&lt;br /&gt;
&lt;br /&gt;
小结&lt;br /&gt;
当Git无法自动合并分支时，就必须首先解决冲突。解决冲突后，再提交，合并完成。&lt;br /&gt;
&lt;br /&gt;
解决冲突就是把Git合并失败的文件手动编辑为我们希望的内容，再提交。&lt;br /&gt;
&lt;br /&gt;
用git log --graph命令可以看到分支合并图。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
https://www.liaoxuefeng.com/wiki/896043488029600/900004111093344&lt;br /&gt;
&lt;br /&gt;
== Rebase==&lt;br /&gt;
&lt;br /&gt;
https://liaoxuefeng.com/books/git/branch/rebase/index.html&lt;br /&gt;
&lt;br /&gt;
=usage first=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
添加key后 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#配置 &lt;br /&gt;
 git config --global user.name &amp;quot;evan886&amp;quot;&lt;br /&gt;
  git config --global user.email &amp;quot;evan886@gmail.com&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= error: 推送一些引用到 &amp;#039;https://github.com/xxx/xxx&amp;#039; 失败=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
error: 推送一些引用到 &amp;#039;https://github.com/xxx/xxx&amp;#039; 失败&lt;br /&gt;
&lt;br /&gt;
提示：更新被拒绝，因为您当前分支的最新提交落后于其对应的远程分支。&lt;br /&gt;
&lt;br /&gt;
提示：再次推送前，先与远程变更合并（如 &amp;#039;git pull ...&amp;#039;）。详见&lt;br /&gt;
&lt;br /&gt;
提示：&amp;#039;git push --help&amp;#039; 中的 &amp;#039;Note about fast-forwards&amp;#039; 小节。&lt;br /&gt;
&lt;br /&gt;
原因;&lt;br /&gt;
&lt;br /&gt;
这个问题是远程仓库与本地不同步引起的&lt;br /&gt;
&lt;br /&gt;
解决方案：&lt;br /&gt;
因为当前分支的最新提交落后于其对应的远程分支，所以我们先从远程库fetch到更新再和本地库合并，之后就可以git push操作了。&lt;br /&gt;
&lt;br /&gt;
git fetch origin&lt;br /&gt;
git merge origin/main&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=usage from gitlab=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Git global setup&lt;br /&gt;
git config --global user.name &amp;quot;Administrator&amp;quot;&lt;br /&gt;
git config --global user.email &amp;quot;admin@example.com&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Create a new repository&lt;br /&gt;
git clone git@mygitlab.com:root/monitor.git&lt;br /&gt;
cd monitor&lt;br /&gt;
git switch -c main&lt;br /&gt;
touch README.md&lt;br /&gt;
git add README.md&lt;br /&gt;
git commit -m &amp;quot;add README&amp;quot;&lt;br /&gt;
git push -u origin main&lt;br /&gt;
&lt;br /&gt;
Push an existing folder&lt;br /&gt;
cd existing_folder&lt;br /&gt;
git init --initial-branch=main&lt;br /&gt;
git remote add origin git@mygitlab.com:root/monitor.git&lt;br /&gt;
git add .&lt;br /&gt;
git commit -m &amp;quot;Initial commit&amp;quot;&lt;br /&gt;
git push -u origin main&lt;br /&gt;
&lt;br /&gt;
Push an existing Git repository&lt;br /&gt;
cd existing_repo&lt;br /&gt;
git remote rename origin old-origin&lt;br /&gt;
git remote add origin git@mygitlab.com:root/monitor.git&lt;br /&gt;
git push -u origin --all&lt;br /&gt;
git push -u origin --tags&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=git 基础安装使用=&lt;br /&gt;
&lt;br /&gt;
==git 服务器搭建==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
服务器上  很久很久以前的文档了 这一部分&lt;br /&gt;
&lt;br /&gt;
apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \&lt;br /&gt;
  libz-dev libssl-dev&lt;br /&gt;
&lt;br /&gt;
apt-get install git&lt;br /&gt;
&lt;br /&gt;
 git --version&lt;br /&gt;
git version 2.20.1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 使用我们指定目录作为Git仓库。&lt;br /&gt;
&lt;br /&gt;
git init newrepo&lt;br /&gt;
useradd git #也可以让这个用户不可以登录，为了安全嘛&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#试过 这个是成功的 &lt;br /&gt;
&lt;br /&gt;
mkdir  testrepo&lt;br /&gt;
&lt;br /&gt;
root@cailuw-test:/data# chown -R git.git testrepo/&lt;br /&gt;
root@cailuw-test:/data# cd testrepo/&lt;br /&gt;
root@cailuw-test:/data/testrepo# git init --bare test.git &lt;br /&gt;
Initialized empty Git repository in /data/testrepo/test.git/&lt;br /&gt;
&lt;br /&gt;
以上命令Git创建一个空仓库，服务器上的Git仓库通常都以.git结尾。然后，把仓库所属用户改为git：&lt;br /&gt;
root@cailuw-test:/data/testrepo# chown -R git.git test.git/&lt;br /&gt;
&lt;br /&gt;
#添加key &lt;br /&gt;
mkdir /home/git/.ssh -p&lt;br /&gt;
cp /root/.ssh/authorized_keys /home/git/.ssh/&lt;br /&gt;
&lt;br /&gt;
chown -R git.git /home/git/.ssh/authorized_keys&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 client  在你的 客户端机器上&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 ssh  -T  git账号名@服务器IP  #客户端验证连接&lt;br /&gt;
 ssh -T git@192.168.10.122&lt;br /&gt;
&lt;br /&gt;
git clone git@192.168.10.122:/data/testrepo/test.git &lt;br /&gt;
正克隆到 &amp;#039;test&amp;#039;...&lt;br /&gt;
warning: 您似乎克隆了一个空仓库。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#配置 &lt;br /&gt;
 git config --global user.name &amp;quot;evan886&amp;quot;&lt;br /&gt;
  git config --global user.email &amp;quot;evan886@gmail.com&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://www.runoob.com/git/git-server.html Git 服务器搭建]&lt;br /&gt;
[http://blog.linuxchina.net/2015/04/11/%e5%9c%a8centosrhel%e4%b8%8a%e6%ba%90%e7%a0%81%e5%ae%89%e8%a3%85git/ 在CentOS/RHEL上源码或者 yum 安装Git 以及 linux and win client 使用 ]&lt;br /&gt;
&lt;br /&gt;
[https://blog.csdn.net/github_36878269/article/details/80967388  Git本地远程仓库的搭建(局域网内也可提交)]&lt;br /&gt;
&lt;br /&gt;
[https://blog.csdn.net/meltsnow/article/details/95949485?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&amp;amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param  Git本地仓库的搭建及使用]&lt;br /&gt;
&lt;br /&gt;
[https://blog.csdn.net/qq_33598419/article/details/94392074?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&amp;amp;depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param &lt;br /&gt;
使用Git搭建自己的私有/个人Git仓库&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
http://blog.linuxchina.net/2015/06/18/how-to-use-git-%e8%bd%ac/&lt;br /&gt;
&lt;br /&gt;
=git usage on win=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#git init &lt;br /&gt;
&lt;br /&gt;
git config --global --edit &lt;br /&gt;
&lt;br /&gt;
配置为你的用户和用户名&lt;br /&gt;
&lt;br /&gt;
# This is Git&amp;#039;s per-user configuration file.&lt;br /&gt;
[user]&lt;br /&gt;
# Please adapt and uncomment the following lines:&lt;br /&gt;
        name = evan&lt;br /&gt;
        email = evan886@gmail.com&lt;br /&gt;
&lt;br /&gt;
After doing this, you may fix the identity used for this commit with:&lt;br /&gt;
&lt;br /&gt;
    git commit --amend --reset-author&lt;br /&gt;
&lt;br /&gt;
日常用得最多就这几个了&lt;br /&gt;
git pull origin master&lt;br /&gt;
git add youfile &lt;br /&gt;
 git commit -m &amp;quot; &amp;quot;&lt;br /&gt;
 git push origin master&lt;br /&gt;
&lt;br /&gt;
[Win-1.lxtx_fengjw] ➤ git push&lt;br /&gt;
Username for &amp;#039;http://gitlab.net&amp;#039;:&lt;br /&gt;
Password for &amp;#039;http://evan@gitlab.lliao.net&amp;#039;:&lt;br /&gt;
To http://gitlab.net/lxtx-backend-docs/docs.git&lt;br /&gt;
 ! [rejected]        master -&amp;gt; master (fetch first)&lt;br /&gt;
error: failed to push some refs to &amp;#039;http://gitlab.net/lxtx-backend-docs/docs.git&amp;#039;&lt;br /&gt;
hint: Updates were rejected because the remote contains work that you do&lt;br /&gt;
hint: not have locally. This is usually caused by another repository pushing&lt;br /&gt;
hint: to the same ref. You may want to first integrate the remote changes&lt;br /&gt;
hint: (e.g., &amp;#039;git pull ...&amp;#039;) before pushing again.&lt;br /&gt;
hint: See the &amp;#039;Note about fast-forwards&amp;#039; in &amp;#039;git push --help&amp;#039; for details.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Git自动账号密码填充 git pull记住用户名和密码=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
2021&lt;br /&gt;
进入项目目录&lt;br /&gt;
&lt;br /&gt;
git config --global credential.helper store&lt;br /&gt;
&lt;br /&gt;
然后会生成一个本地文件用于记录用户名和密码，这个文件我们无需关心&lt;br /&gt;
&lt;br /&gt;
再次git pull一下，会让输入用户名和密码。这次输入之后以后就不会每次输入了。&lt;br /&gt;
&lt;br /&gt;
如果要清除用户名和密码&lt;br /&gt;
&lt;br /&gt;
运行一下命令缓存输入的用户名和密码&lt;br /&gt;
&lt;br /&gt;
git config --global credential.helper wincred&lt;br /&gt;
&lt;br /&gt;
清除掉缓存在git中的用户名和密码&lt;br /&gt;
&lt;br /&gt;
git credential-manager uninstall&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1、每次操作都需要输入用户名和密码感觉很繁琐，解决方法，在本地的工程文件夹的.git下打开config文件添加：&lt;br /&gt;
&lt;br /&gt;
[credential]&lt;br /&gt;
     helper = store或者在git bash 中执行&lt;br /&gt;
git config --global credential.helper store再输入一次用户名密码后就可以保存住了。&lt;br /&gt;
&lt;br /&gt;
2、不行就用以下方法：&lt;br /&gt;
先用Git拉一次东西，拉的时候会提醒你输入帐号的密码&lt;br /&gt;
输入正确的帐号和密码后，等东西拉完以后输入&lt;br /&gt;
git config --global credential.helper store&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#这样只针对单个project&lt;br /&gt;
[remote &amp;quot;origin&amp;quot;]&lt;br /&gt;
    url = http://huangweiqing:huangweiqing@gogs.com/zt_tech/_interface.git&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=2024=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
github/myweb&lt;br /&gt;
&lt;br /&gt;
不存在 直接创建 git init devops &lt;br /&gt;
&lt;br /&gt;
cd myweb &lt;br /&gt;
git init&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
（使用 &amp;quot;git restore --staged &amp;lt;文件&amp;gt;...&amp;quot; 以取消暂存）&lt;br /&gt;
&lt;br /&gt;
➜  myweb git:(main) ✗ git status                  &lt;br /&gt;
位于分支 main&lt;br /&gt;
您的分支基于 &amp;#039;origin/main&amp;#039;，但此上游分支已经不存在。&lt;br /&gt;
  （使用 &amp;quot;git branch --unset-upstream&amp;quot; 来修复）&lt;br /&gt;
&lt;br /&gt;
尚未暂存以备提交的变更：&lt;br /&gt;
  （使用 &amp;quot;git add &amp;lt;文件&amp;gt;...&amp;quot; 更新要提交的内容）&lt;br /&gt;
  （使用 &amp;quot;git restore &amp;lt;文件&amp;gt;...&amp;quot; 丢弃工作区的改动）&lt;br /&gt;
	修改：     README&lt;br /&gt;
&lt;br /&gt;
修改尚未加入提交（使用 &amp;quot;git add&amp;quot; 和/或 &amp;quot;git commit -a&amp;quot;）&lt;br /&gt;
➜  myweb git:(main) ✗ cat README &lt;br /&gt;
git tesf&lt;br /&gt;
pirnt(&amp;quot;hello&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
#回到以前的版本 注意小心 &lt;br /&gt;
git checkout --&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
https://www.bilibili.com/video/BV11q4y1s74P?spm_id_from=333.788.videopod.episodes&amp;amp;vd_source=e3e41ea2b1d70e0e3a6a0372ee88d714&amp;amp;p=21&lt;br /&gt;
&lt;br /&gt;
=see also=&lt;br /&gt;
[https://zhuanlan.zhihu.com/p/273304706 Github 太狠了，居然把 &amp;quot;master&amp;quot; 干掉了！]&lt;br /&gt;
&lt;br /&gt;
[https://www.liaoxuefeng.com/wiki/896043488029600  廖Git教程]&lt;br /&gt;
&lt;br /&gt;
[https://blog.csdn.net/Adelly/article/details/79099772 GitLab使用教程]&lt;br /&gt;
&lt;br /&gt;
[https://www.cnblogs.com/chenwolong/p/GIT.html GIT 常用命令]&lt;br /&gt;
&lt;br /&gt;
[https://zhuanlan.zhihu.com/p/36062308 Git &amp;amp; Gitlab 使用指南]&lt;br /&gt;
&lt;br /&gt;
[https://www.jianshu.com/p/142b3dc8ae15 GitLab的简单使用]&lt;br /&gt;
&lt;br /&gt;
[https://aak1247.coding.me/git-https-auto-input.html Git完成HTTPS的自动账号密码填充]&lt;br /&gt;
&lt;br /&gt;
[https://blog.csdn.net/qq_32239417/article/details/61916645 git clone代码提示需要输入密码]&lt;br /&gt;
&lt;br /&gt;
[https://www.jianshu.com/p/b49f6dfbf721 删除git中缓存的用户名和密码]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
https://help.github.com/cn&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://git-scm.com/book/zh/v1/Git-%E5%9F%BA%E7%A1%80-%E6%89%93%E6%A0%87%E7%AD%BE Git 基础 - 打标签]&lt;br /&gt;
&lt;br /&gt;
[https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001376951758572072ce1dc172b4178b910d31bc7521ee4000 创建标签]&lt;br /&gt;
&lt;br /&gt;
[https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001375840202368c74be33fbd884e71b570f2cc3c0d1dcf000 git 解决冲突]&lt;br /&gt;
&lt;br /&gt;
[https://blog.csdn.net/junli_chen/article/details/52623350?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&amp;amp;depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param  git创建一个自己的本地仓库]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[category:git]]&lt;br /&gt;
[[category:ops]]&lt;/div&gt;</summary>
		<author><name>Evan</name></author>
	</entry>
</feed>