1 前言
Git是一种分布式版本控制系统,广泛用于协同开发和版本管理。
1、版本控制系统(VCS):
- Git是一种版本控制系统,用于跟踪项目文件的变化。
- 它允许多人协同工作,确保团队成员之间的代码同步和合作。
2、分布式系统:
- Git是一种分布式版本控制系统,每个开发者都有完整的项目副本,包括完整的历史记录。
- 这使得每个开发者都能在本地工作,而不必依赖中央服务器。
3、仓库(Repository):
- Git存储项目的整个历史记录和文件变更的地方。
- 有本地仓库和远程仓库之分。本地仓库保存在开发者的计算机上,而远程仓库通常存储在服务器上。
4、提交(Commit):
- 提交是对项目的一次变更的快照,包含了文件的修改、添加或删除。
- 提交后,变更将被永久记录在项目的历史中。
5、分支(Branch):
- 分支是独立的开发路径,可以在不影响主线(主分支)的情况下进行工作。
- 创建分支可以用于开发新功能、修复错误等。
6、合并(Merge):
- 合并是将两个分支的变更整合到一个分支中。
- 主要用于将新功能或修复的代码合并回主分支。
7、远程操作:
- 远程操作涉及与远程仓库的交互,包括拉取(Fetch)、推送(Push)和
8、克隆(Clone)。
- 拉取用于获取远程仓库的最新变更,推送用于将本地变更上传到远程仓库,克隆用于复制整个远程仓库。
9、标签(Tag):
- 标签是用于标记特定提交的命名指针,通常用于版本号标记或重要的里程碑。
- 标签不随提交而移动,提供一个稳定的参考点。
10、冲突解决:
- 当多个开发者同时修改相同文件的相同部分时,可能会发生冲突。
- 冲突需要手动解决,然后提交解决方案。
11、配置:
- Git允许通过配置文件或命令行进行各种设置,以满足不同项目和开发者的需求
2 查询
2.1 查询分支
查询本地所有分支
# 查询本地分支
git branch
# 查询远程分支
git branch -r
Pycharm查看当前分支
步骤: Git
->Branches

哈喽,大家好,我是[有勇气的牛排](全网同名)🐮🐮🐮
https://www.couragesteak.com
有问题的小伙伴欢迎在文末[评论,点赞、收藏]是对我最大的支持!!!。
2.2 查询 Git 推送记录
步骤:Git
->Show Git Log

3 创建分支 new branch
# 创建 分支 dev
git branch dev
# 切换到 分支 dev
git branch dev
# 推送分支到远程仓库
git push --set-upstream origin dev
创建新分支:
Git
->Branches
->New Branch
->输入您的仓库名(可以勾选是否切换到新分支)
推送新分支到远程仓库
Git
->Push

4 提交修改 commit
4.1 文件整体提交
# git commit提交文件到本地仓库
git commit -m "标签"
Pycharm 进行提交操作:Git
->Commit

4.2 点击文件可以进行对比
双击 commit 区的文件即可查看
revert:恢复

4.2.1 Your version 参数查看
- Revert(恢复)
- Append(追加)
- Compare with Clipboard(与剪切板比较)
- Annotate with Blame(注释与责备)
- Move to Another Changelist( 移至另一个变更列表)
- Exclude Lines from Commit(从提交中排除行)
- Include Only These Lines into Commit(仅将这些行包含到提交中)
4.3 代码块 commit

def get_name2():
return "有勇气的牛排"
def domian():
return "couragesteak.com"
def get_name():
return "有勇气的牛排"
def get_url():
return "www.couragesteak.com"
5 pull
5.1 正常pull
步骤:Git
->pull
5.2 冲突pull处理
6 merge 分支合并
需求:将 dev 分支的内容,合并到 master 分支上。
首先,确保在开发的分支内容均推送到了git远程仓库
6.1 命令行
# 切换到主分支
git checkout master
6.2 Pycharm
- 首先,切换到 master 分支
- 在 log 中切换到分支 dev 的提交记录

如果在push之前需要撤销合并(待验证):
git reset
如果在push后,需要撤销合并
<h2><a id="1__0"></a>1 前言</h2>
<p>Git是一种分布式版本控制系统,广泛用于协同开发和版本管理。</p>
<p>1、版本控制系统(VCS):</p>
<ul>
<li>Git是一种版本控制系统,用于跟踪项目文件的变化。</li>
<li>它允许多人协同工作,确保团队成员之间的代码同步和合作。</li>
</ul>
<p>2、分布式系统:</p>
<ul>
<li>Git是一种分布式版本控制系统,每个开发者都有完整的项目副本,包括完整的历史记录。</li>
<li>这使得每个开发者都能在本地工作,而不必依赖中央服务器。</li>
</ul>
<p>3、仓库(Repository):</p>
<ul>
<li>Git存储项目的整个历史记录和文件变更的地方。</li>
<li>有本地仓库和远程仓库之分。本地仓库保存在开发者的计算机上,而远程仓库通常存储在服务器上。</li>
</ul>
<p>4、提交(Commit):</p>
<ul>
<li>提交是对项目的一次变更的快照,包含了文件的修改、添加或删除。</li>
<li>提交后,变更将被永久记录在项目的历史中。</li>
</ul>
<p>5、分支(Branch):</p>
<ul>
<li>分支是独立的开发路径,可以在不影响主线(主分支)的情况下进行工作。</li>
<li>创建分支可以用于开发新功能、修复错误等。</li>
</ul>
<p>6、合并(Merge):</p>
<ul>
<li>合并是将两个分支的变更整合到一个分支中。</li>
<li>主要用于将新功能或修复的代码合并回主分支。</li>
</ul>
<p>7、远程操作:</p>
<ul>
<li>远程操作涉及与远程仓库的交互,包括拉取(Fetch)、推送(Push)和</li>
</ul>
<p>8、克隆(Clone)。</p>
<ul>
<li>拉取用于获取远程仓库的最新变更,推送用于将本地变更上传到远程仓库,克隆用于复制整个远程仓库。</li>
</ul>
<p>9、标签(Tag):</p>
<ul>
<li>标签是用于标记特定提交的命名指针,通常用于版本号标记或重要的里程碑。</li>
<li>标签不随提交而移动,提供一个稳定的参考点。</li>
</ul>
<p>10、冲突解决:</p>
<ul>
<li>当多个开发者同时修改相同文件的相同部分时,可能会发生冲突。</li>
<li>冲突需要手动解决,然后提交解决方案。</li>
</ul>
<p>11、配置:</p>
<ul>
<li>Git允许通过配置文件或命令行进行各种设置,以满足不同项目和开发者的需求</li>
</ul>
<h2><a id="2__53"></a>2 查询</h2>
<h3><a id="21__55"></a>2.1 查询分支</h3>
<p>查询本地所有分支</p>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">查询本地分支</span>
git branch
<span class="hljs-meta">
# </span><span class="language-bash">查询远程分支</span>
git branch -r
</code></div></pre>
<p>Pycharm查看当前分支</p>
<p>步骤: <code>Git</code>-><code>Branches</code></p>
<p><img src="https://static.couragesteak.com/article/39a2ba30c1ef5775251429c5e2dbda05.png" alt="Pycharm查看当前分支" /></p>
<p><font face="楷体,华文行楷,隶书,黑体" color="red" size="4"><strong>哈喽,大家好,我是[有勇气的牛排](全网同名)🐮🐮🐮</strong></font></p>
<p><a href="https://www.couragesteak.com" target="_blank">https://www.couragesteak.com</a></p>
<p><font face="楷体,华文行楷,隶书,黑体" color="blue" size="4"><strong>有问题的小伙伴欢迎在文末[评论,点赞、收藏]是对我最大的支持!!!。</strong></font></p>
<h3><a id="22__Git__79"></a>2.2 查询 Git 推送记录</h3>
<p>步骤:<code>Git</code>-><code>Show Git Log</code></p>
<p><img src="https://static.couragesteak.com/article/37221f68c45123cd5bc8d8484cb6251d.png" alt="查询 Git 推送记录" /></p>
<h2><a id="3__new_branch_88"></a>3 创建分支 new branch</h2>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">创建 分支 dev</span>
git branch dev
<span class="hljs-meta"># </span><span class="language-bash">切换到 分支 dev</span>
git branch dev
<span class="hljs-meta"># </span><span class="language-bash">推送分支到远程仓库</span>
git push --set-upstream origin dev
</code></div></pre>
<p>创建新分支:</p>
<p><code>Git</code>-><code>Branches</code>-><code>New Branch</code>-><code>输入您的仓库名(可以勾选是否切换到新分支)</code></p>
<p>推送新分支到远程仓库</p>
<p><code>Git</code>-><code>Push</code></p>
<p><img src="https://static.couragesteak.com/article/08973fe99f5da28fa1cbd02d54528d16.png" alt="创建新分支" /></p>
<h2><a id="4__commit_110"></a>4 提交修改 commit</h2>
<h3><a id="41__112"></a>4.1 文件整体提交</h3>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">git commit提交文件到本地仓库</span>
git commit -m "标签"
</code></div></pre>
<p>Pycharm 进行提交操作:<code>Git</code>-><code>Commit</code></p>
<p><img src="https://static.couragesteak.com/article/e6f531032ba0afbacebcdd94091e6740.png" alt="Pycharm 进行提交操作" /></p>
<h3><a id="42__123"></a>4.2 点击文件可以进行对比</h3>
<p>双击 commit 区的文件即可查看</p>
<p>revert:恢复</p>
<p><img src="https://static.couragesteak.com/article/9b5730be825210fa2f9373e52c4564d2.png" alt="revert:恢复" /></p>
<h4><a id="421_Your_version__131"></a>4.2.1 Your version 参数查看</h4>
<ul>
<li>Revert(恢复)</li>
<li>Append(追加)</li>
<li>Compare with Clipboard(与剪切板比较)</li>
<li>Annotate with Blame(注释与责备)</li>
<li>Move to Another Changelist( 移至另一个变更列表)</li>
<li>Exclude Lines from Commit(从提交中排除行)</li>
<li>Include Only These Lines into Commit(仅将这些行包含到提交中)</li>
</ul>
<h3><a id="43__commit_143"></a>4.3 代码块 commit</h3>
<p><img src="https://static.couragesteak.com/article/b03ad8b9b504a81510f7a754186d6301.png" alt="代码块 commit" /></p>
<pre><code class="lang-">def get_name2():
return "有勇气的牛排"
def domian():
return "couragesteak.com"
def get_name():
return "有勇气的牛排"
def get_url():
return "www.couragesteak.com"
</code></pre>
<h2><a id="5_pull_166"></a>5 pull</h2>
<h3><a id="51_pull_168"></a>5.1 正常pull</h3>
<p>步骤:<code>Git</code>-><code>pull</code></p>
<h3><a id="52_pull_174"></a>5.2 冲突pull处理</h3>
<h2><a id="6_merge__178"></a>6 merge 分支合并</h2>
<p><strong>需求</strong>:将 dev 分支的内容,合并到 master 分支上。</p>
<p>首先,确保在开发的分支内容均推送到了git远程仓库</p>
<h3><a id="61__184"></a>6.1 命令行</h3>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">切换到主分支</span>
git checkout master
</code></div></pre>
<h3><a id="62_Pycharm_192"></a>6.2 Pycharm</h3>
<ol>
<li>首先,切换到 master 分支</li>
<li>在 log 中切换到分支 dev 的提交记录</li>
</ol>
<p><img src="https://static.couragesteak.com/article/53dcdc99d8603868ac5f6c99e7b775b1.png" alt="git合并分支" /></p>
<p>如果在push之前需要撤销合并(待验证):</p>
<pre><div class="hljs"><code class="lang-shell">git reset
</code></div></pre>
<p>如果在push后,需要撤销合并</p>
留言