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(此处下载极慢,耐心等待,失败后重试直到完成)
  • 重启软件
相关推荐
少司府1 天前
Tools相关:深入浅出学Git
大数据·c++·git·gitee·github·仓库·分支
ChampaignWolf1 天前
Eclipse + GitHub Copilot = Lightspeed SAP ABAP Development
eclipse·github·copilot
2601_955781981 天前
告别手动操作|Win11 OpenClaw 一键安装,电脑自动化躺平式实现
人工智能·github·open claw安装·open claw部署
海蓝可知天湛1 天前
Agent&IELTS雅思口语专属语料库
人工智能·github·rag·ielts·skills
ServBay1 天前
OpenCode 和它的7款必备插件
后端·github·ai编程
Yunzenn1 天前
字节最新研究cola-DLM第 01 章:语言生成的三次范式之争 —— 从 RNN 到 AR 到扩散
架构·github
wangruofeng1 天前
GitHub AI 月榜解读:8 大趋势告诉你该关注什么
github·ai编程
小小测试开发2 天前
AI 水印攻防战:OpenAI 引入 SynthID 认证,GitHub 同步出现去水印工具
人工智能·github
微软技术栈2 天前
Microsoft AI Genius 4.0 | 使用 GitHub Copilot SDK 升级开发者体验
人工智能·microsoft·github
小雨青年2 天前
GitHub Actions 时区 Cron 和 Environment deployment false 实战
github