Git可视化管理工具(SourceTree)使用操作大全经典实用指南

作者:袖梨 2026-09-07

平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“Git可视化管理工具(SourceTree)采用操作大全经典”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。

目录
  • 前言:
  • 连接Gitee or GitHub,拿到代码:
    • 在SourceTree中添加SSH密钥:
    • Clone对应托管平台仓库(以Gitee为例):
  • SourceTree设置默认工作目录:
    • 设置SourceTree默认项目目录:
  • SourceTree代码提交:
    • 1.首先切换到需修改功能代码所在的分支:
    • 2.将修改的代码提交到暂存区:
    • 3.将暂存区中的代码提交到本地代码仓库:
    • 4.代码拉取更新本地代码库,并将代码推送到远程仓库:
    • 5.在Gitee中查看推送结果:
  • SourceTree分支切换,新建,合并:
    • 1.分支切换:
    • 2.新建分支:
    • 3.合并分支:
  • SourceTree代码冲突解决:
    • 首先我们需制造一个提交文件遇到冲突的情景:
    • 直接打开冲突文件手动解决冲突:
    • 采用外部文本文件对比工具Beyond Compare解决冲突:
      • SourceTree设置文本文件对比工具Beyond Compare:
      • 采用Beyond Compare解决冲突:
  • Sourcetree中的基本名词说明:
    • 1、fork 项目:
    • 2、克隆本地
    • 3、根据文档新建分支
    • 4、提交修改的代码到远程代码库
    • 5、提交 Pull Request

前言:

落到代码里,俗话说的好工欲善其事必先利其器,Git分布式版本控制系统是我们日常开发中不可或缺的。目前市面上比较流行的Git可视化管理工具有SourceTree、Github Desktop、TortoiseGit,综合网上的一些文章分析和自己的日常开发实践心得个人比较建议开发者采用SourceTree,因为SourceTree同时兼容Windows和Mac,同时且界面十分的精美简洁,大大的简化了开发者与代码库之间的Git操作方式。该篇文章主要是对日常开发中采用SourceTree可视化管理工具的一些常用操作进行细致说明。

连接Gitee or GitHub,拿到代码:

注意:这里介绍的是采用SSH协议拿到关联远程仓库的代码,大家也能够直接采用过HTTPS协议的方式直接输入账号密码拿到关联代码!

在SourceTree中添加SSH密钥:

工具=>选择:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送

添加SSH密钥位置:C:Usersxxxxx.sshid_rsa.pub:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_02

SSH客户端选择OpenSSH:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_03

Clone对应托管平台仓库(以Gitee为例):

打开码云,找到自己需Clone的仓库!

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_04

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_05

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_06

SourceTree设置默认工作目录:

结合项目来看,由上面我们能够发现每次Clone克隆项目的时候,克隆下来的项目默认存储位置都是在C盘,所以每次都需我们去选择项目存放的路径,作为一个喜欢偷懒的人而言当然不喜欢这种方式啦,因此我们能够设置一个默认的项目存储位置。

设置SourceTree默认项目目录:

点击工具=>选项=>一般=>找到项目目录设置Clone项目默认存储的位置:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_07

SourceTree代码提交:

1.首先切换到需修改功能代码所在的分支:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_08

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_09

2.将修改的代码提交到暂存区:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_10

3.将暂存区中的代码提交到本地代码仓库:

注意:多人同时开发项目的时候,不建议默认选中立即推送变更到origin/develop,避免一些不必要的麻烦!

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_11

4.代码拉取更新本地代码库,并将代码推送到远程仓库:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_12

勾选需推送的分支,点击推送到远程分支:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_13

代码成功推送到远程代码库:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_14

5.在Gitee中查看推送结果:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_15

SourceTree分支切换,新建,合并:

1.分支切换:

双击切换:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_16

单击鼠标右键切换:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_17

2.新建分支:

注意:在新建分支时,我们需在哪个主分支的基础上新建分支必须先要切换到对应的主分支才能到该主分支上新建分支,如下所示我们要在master分支上新建一个feature-0613分支:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_18

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_19

3.合并分支:

注意:在合同时代码之前我们都需将需合并的分支拉取到最新状态(**避免覆盖别人的代码,或者丢失一些重要文件)!!!!!

落到代码里,在master分支上点击右键,选择合同时feature-0613至当前分支即可进行合并:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_20

分支合并成功:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_21

SourceTree代码冲突解决:

首先我们需制造一个提交文件遇到冲突的情景:

结合项目来看,在SoureceTree中在Clone一个新项目,命名为pingrixuexilianxi2,如下所示图所示:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_22

我们以项目中的【代码合并冲突测试.txt】文件为例:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_23

在这个场景下,在pingrixuexilianxi2中添加内容,同时提交到远程代码库,添加的内容如下所示:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_24

在这个场景下,在pingrixuexilianxi中添加内容,提交代码(不选择立即推送变更到origin/master),拉取代码即会遇到冲突:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_25

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_26

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_27

冲突文件中的内容:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_28

直接打开冲突文件手动解决冲突:

由下面的冲突文件中的冲突内容我们了解到:

1

2

3

4

5

<<<<<<< HEAD

6月19日 pingrixuexilianxi添加了内容

=======

6月18日 pingrixuexilianxi2修改了这个文件哦

>>>>>>> a8284fd41903c54212d1105a6feb6c57292e07b5

<<<<<<< HEAD到 =======里面的【6月19日 pingrixuexilianxi添加了内容】是自己刚才的Commit提交的内容

理解这一步时,=======到 >>>>>>> a8284fd41903c54212d1105a6feb6c57292e07b5里面的【6月18日 pingrixuexilianxi2修改了这个文件哦】是远程代码库更新的内容(即为pingrixuexilianxi2本地代码库推送修改内容)。

手动冲突解决方法:

落到代码里,根据项目需求删除不需的代码就行了,假如都需的话我们只需把 <<<<<<< HEAD======= >>>>>>> a8284fd41903c54212d1105a6feb6c57292e07b5都删掉冲突就解决了(注意,在项目里最后这些符号都不能存在,否则可能会报异常)。

最后将冲突文件标记为已解决,提交到远程仓库:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_29

采用外部文本文件对比工具Beyond Compare解决冲突:

SourceTree设置文本文件对比工具Beyond Compare:

工具=>选项=>比较:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_30

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_31

采用Beyond Compare解决冲突:

Beyond Compare采用技巧:

官方全面教程:(链接已移除)

SourceTree打开外部和合并工具:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_32

注意:第一次启动Beynod Compare软件需一会时间,请耐心等待:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_33

Beynod Compare进行冲突合并:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_34

结合项目来看,点击保存文件后关闭Beynod Compare工具,SourceTree中的冲突就解决了,在SourceTree中我们会发现多了一个 .orig 的文件。接着选中那个.orig文件,单击右键 => 移除,最后我们推送到远程代码库即可:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_35

Sourcetree中的基本名词说明:

从实现思路看,克隆/新建(clone):从远程仓库URL加载新建一个与远程仓库一样的本地仓库。

提交(commit):将暂存区文件上传到本地代码仓库。

推送(push):将本地仓库同步至远程仓库,一般推送(push)前先拉取(pull)一次,确保一致(十分注意:这样你才能达到和别人最新代码同步的状态,同时也能够规避很多不必要的问题)。

拉取(pull):从远程仓库拿到信息同时同步至本地仓库,并且自动执行合并(merge)操作(git pull=git fetch+git merge)。

拿到(fetch):从远程仓库拿到信息并同步至本地仓库。

分支(branch):新建/修改/删除分枝。

合同时(merge):将多个同名文件合并为一个文件,该文件包含多个同名文件的所有内容,相同内容抵消。

贮藏(git stash):保存工作现场。

丢弃(Discard):丢弃更改,恢复文件改动/重置所有改动,即将已暂存的文件丢回未暂存的文件。

标签(tag):给项目增添标签。

从实现思路看,工作流(Git Flow):团队工作时,每个人新建属于自己的分枝(branch),确定无误后提交到master分支。

终端(terminal):能够输入git命令行。

理解这一步时,每次拉取和推送的时候不用每次输入密码的命令行:git config credential.helper osxkeychain sourcetree。

检出(checkout):切换不同分支。

添加(add):添加文件到缓存区。

移除(remove):移除文件至缓存区。

重置(reset):回到最近添加(add)/提交(commit)状态。

1、fork 项目:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_36

2、克隆本地

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_推送_37

打开Git Bash输入仓库克隆命令:

git clone https:///liangtongzhuo/taro-ui.git

3、根据文档新建分支

拖进 SourceTree,基于 dev 新建分支如下所示图:

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_38

4、提交修改的代码到远程代码库

文章上面已经提到了采用SourceTree提交的相关操作,可参考:

(链接已移除) F:SourceTree代码提交)

当然也能够采用git命令提交:

git add .  --提交所有修改的文件到本地暂存区

git commit -m"fix(dos):修正文字 " --提交到本地代码库

git push  --提交到github中的远程代码库

5、提交 Pull Request

第四步提交成功后,进入原来fork的仓库,点击 Compare

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_git_39

提交你的说明,选择合并的分支即可,剩下等待合并。

全网最全面的SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)_代码库_40

到此这篇关于Git可视化管理工具(SourceTree)采用操作大全经典的文章就介绍到这了,更多相关SourceTree采用操作(入门到精通)内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多兼容脚本之家!

您可能感兴趣的文章:
  • git如何采用Sourcetree合并多次本地提交记录
  • git可视化工具Sourcetree采用全攻略(git冲突解决)
  • 关于Sourcetree启动问题(完美解决)

相关文章

精彩推荐