Sourcetree图文使用教程(保姆级)

1、Sourcetree简要介绍

Sourcetree 是 Windows 和Mac OS X 下免费的 Git 客户端版本管理工具,Sourcetree拥有一个精美简洁的界面,管理项目方便,可追溯代码编写者及日期,轻松完成项目的代码管理。无需使用git命令,彻底释放双手,提高效率,大大简化了开发者与代码库之间的Git操作方式。

Sourcetree拥有完整的Git功能:

  • 通过一个简单的用户界面即可使用所有的Git命令
  • 通过一次单击,即可管理所有的Git库,无论是托管的还是本地的
  • 通过一次单击,即可进行commit、push、pull、merge等操作
  • 通过双击,即可切换分支及版本回滚。

2、下载与安装

先单独安装Git软件可加快Sourcetree的安装

Sourcetree官网地址:https://www.sourcetreeapp.com/

打开对应安装包

3、Sourcetree使用方法

  • Local: 本地仓库

  • Remote:远程仓库

  • Clone:克隆远程仓库

  • Add:添加本地已有仓库

  • Create:创建仓库

3.1 创建仓库

现在有个目录dir需要添加版本管控

//不需要服务器端提交的内容可以写到忽略文件里,比如不跟踪text3.txt

创建 .gitignore文件并添加text3.txt
创建仓库后,出现.git的隐藏目录

3.2 提交

将需要跟踪的文件加入到暂存区,最后点击提交
主分支已记录提交内容
文件出现修改时,sourcetree会跟踪到对应修改位置,如下图
将修改文件放入暂存区并提交,节点更新

3.3 推送

推送至服务器需添加远程仓库
推送前先拉取服务器代码。

这边初次建立,因此跳过拉取,3.9节可查看拉取操作

3.4 添加分支

常用分支策略如下:

一般会分为三种分支,分别是主分支(master),开发分支(develop)和修补bug分支(fixbug)。

代码库应该有一个、且仅有一个主分支。所有提供给用户使用的正式版本,都在这个主分支上发布。

主分支只用来分布重大版本,日常开发应该在另一条分支上完成。

3.5 切换分支

新增分支内容修改后,不影响主分支内容,需要从主分支修改内容时,需要切换到主分支

双击master节点即可切换至主分支

主分支内容修改后,可清楚看到2分支内容独立

3.6 合并

当需要将新增分支内容也添加到主分支时,我们需要用到合并分支,

  • 切换到主分支
  • 选中需要合并的其他分支节点
  • 右键选中Merge

3.7 解决冲突

当合并分支提示冲突时,说明这个2个分支中,有文件出现同地方被修改,因此需要开发者自己手动处理这些修改的地方。

上一节的合并中,text1出现了叹号,这是冲突文件的标识。

  • 右键选中冲突文件,点击解决冲突,选择主分支(我的),或者其他分支的(其他的),比较复杂的冲突,这边建议直接打开源文件手动修改,比如有些需要主分支,有些需要其他分支,有些都需要。
  • 打开源文件,搜索"<<<"能快速找到冲突的地方
  • 根据自己功能,对冲突内容进行增删改
  • 修改完成后,存入暂存区并提交

3.8 删除分支

当分支合并完成时,且其他分支不需要再使用后,可以将其他无用分支删除

3.9 拉取

多个开发者开发同一项目时,推送前需拉取服务器代码,同步最新内容

3.10 撤回

如果修改了工作区的文件后发现改错了,或者不想要此次的修改

  • 选中上一提交节点
  • 右键选择Reset(重置)
  • 弹窗选择Hard(硬重置) 完全删除此次修改内容,需多次确认再使用,避免误删。
  • 文件已恢复至修改前

3.11 回滚版本

选中任一节点双击,所有文件内容都会回到此版本

3.12 克隆

4、常见问题

4.1 中文乱码

Sourcetree界面中的log显示乱码需要按照如下方式配置

  • 工具->选项
  • 编码选择GB18030
  • 在命令行下输入:
bash 复制代码
git config --global i18n.logoutputencoding GB18030
git config --global gui.encoding GB18030
  • 重启软件

4.2 推送无分支内容

在sourcetree使用过程中出现推送对话框里面本地、远程分支什么都不显示的问题。

  • 工具->选项
  • 点击Git标签页
  • Git版本依次点击Embedded、Update Embedded(此处下载极慢,耐心等待,失败后重试直到完成)
  • 重启软件

1、Sourcetree简要介绍

Sourcetree 是 Windows 和Mac OS X 下免费的 Git 客户端版本管理工具,Sourcetree拥有一个精美简洁的界面,管理项目方便,可追溯代码编写者及日期,轻松完成项目的代码管理。无需使用git命令,彻底释放双手,提高效率,大大简化了开发者与代码库之间的Git操作方式。

Sourcetree拥有完整的Git功能:

  • 通过一个简单的用户界面即可使用所有的Git命令
  • 通过一次单击,即可管理所有的Git库,无论是托管的还是本地的
  • 通过一次单击,即可进行commit、push、pull、merge等操作
  • 通过双击,即可切换分支及版本回滚。

2、下载与安装

先单独安装Git软件可加快Sourcetree的安装

Sourcetree官网地址:https://www.sourcetreeapp.com/

打开对应安装包

3、Sourcetree使用方法

  • Local: 本地仓库

  • Remote:远程仓库

  • Clone:克隆远程仓库

  • Add:添加本地已有仓库

  • Create:创建仓库

3.1 创建仓库

现在有个目录dir需要添加版本管控

//不需要服务器端提交的内容可以写到忽略文件里,比如不跟踪text3.txt

创建 .gitignore文件并添加text3.txt
创建仓库后,出现.git的隐藏目录

3.2 提交

将需要跟踪的文件加入到暂存区,最后点击提交
主分支已记录提交内容
文件出现修改时,sourcetree会跟踪到对应修改位置,如下图
将修改文件放入暂存区并提交,节点更新

3.3 推送

推送至服务器需添加远程仓库
推送前先拉取服务器代码。

这边初次建立,因此跳过拉取,3.9节可查看拉取操作

3.4 添加分支

常用分支策略如下:

一般会分为三种分支,分别是主分支(master),开发分支(develop)和修补bug分支(fixbug)。

代码库应该有一个、且仅有一个主分支。所有提供给用户使用的正式版本,都在这个主分支上发布。

主分支只用来分布重大版本,日常开发应该在另一条分支上完成。

3.5 切换分支

新增分支内容修改后,不影响主分支内容,需要从主分支修改内容时,需要切换到主分支

双击master节点即可切换至主分支

主分支内容修改后,可清楚看到2分支内容独立

3.6 合并

当需要将新增分支内容也添加到主分支时,我们需要用到合并分支,

  • 切换到主分支
  • 选中需要合并的其他分支节点
  • 右键选中Merge

3.7 解决冲突

当合并分支提示冲突时,说明这个2个分支中,有文件出现同地方被修改,因此需要开发者自己手动处理这些修改的地方。

上一节的合并中,text1出现了叹号,这是冲突文件的标识。

  • 右键选中冲突文件,点击解决冲突,选择主分支(我的),或者其他分支的(其他的),比较复杂的冲突,这边建议直接打开源文件手动修改,比如有些需要主分支,有些需要其他分支,有些都需要。
  • 打开源文件,搜索"<<<"能快速找到冲突的地方
  • 根据自己功能,对冲突内容进行增删改
  • 修改完成后,存入暂存区并提交

3.8 删除分支

当分支合并完成时,且其他分支不需要再使用后,可以将其他无用分支删除

3.9 拉取

多个开发者开发同一项目时,推送前需拉取服务器代码,同步最新内容

3.10 撤回

如果修改了工作区的文件后发现改错了,或者不想要此次的修改

  • 选中上一提交节点
  • 右键选择Reset(重置)
  • 弹窗选择Hard(硬重置) 完全删除此次修改内容,需多次确认再使用,避免误删。
  • 文件已恢复至修改前

3.11 回滚版本

选中任一节点双击,所有文件内容都会回到此版本

3.12 克隆

4、常见问题

4.1 中文乱码

Sourcetree界面中的log显示乱码需要按照如下方式配置

  • 工具->选项
  • 编码选择GB18030
  • 在命令行下输入:
bash 复制代码
git config --global i18n.logoutputencoding GB18030
git config --global gui.encoding GB18030
  • 重启软件

4.2 推送无分支内容

在sourcetree使用过程中出现推送对话框里面本地、远程分支什么都不显示的问题。

  • 工具->选项
  • 点击Git标签页
  • Git版本依次点击Embedded、Update Embedded(此处下载极慢,耐心等待,失败后重试直到完成)
  • 重启软件
相关推荐
正经教主6 小时前
【Git】Git05-01:Git 远程仓库协作流程原理
git·gitlab·github
万事可爱^11 小时前
GitHub爆火开源项目——RustScan深度拆解
c语言·开发语言·rust·开源·github·rustscan
吃饺子不吃馅12 小时前
优化:如何避免 React Context 引起的全局挂载节点树重新渲染
前端·面试·github
逛逛GitHub13 小时前
Kimi 开源即爆火!K2 Thinking 有哪些实用玩法?
github
JEECG低代码平台15 小时前
GitHub 十大 Java 语言 AI 开源项目推荐
java·人工智能·github
码上农民19 小时前
微信样式下载
github
破烂pan1 天前
github下载repo中的单独文件
github
SelectDB1 天前
Doris MCP Server v0.6.0 正式发布
github
Solyn_HAN1 天前
GitHub 系统全面详细使用指南
github
逛逛GitHub2 天前
13 个优质的 GitHub 项目,哪个你用过?
github