免费Git客户端:sourcetree详细介绍
一、简介:
一个用于Windows和Mac的免费Git客户端。
Sourcetree简化了如何与Git存储库进行交互,这样您就可以集中精力编写代码。通过Sourcetree的简单Git GUI可视化和管理存储库。
官网下载地址:Sourcetree | Free Git GUI for Mac and Windows
本文介绍的版本为sourcetree 2.5.5;
二、使用方法
1、安装
下载完成后,在安装SourceTree的过程中,需要通过账户登录,但注册或登录界面可能根本无法打开,导致软件无法正常安装。
解决方法:
(1)、在目录C:\Users\{youruser}\AppData\Local\Atlassian\SourceTree 下创建文件accounts.json ,注意:{youruser}需要替换为登录系统用户名。如我的电脑路径为:
C:\Users\Administrator\AppData\Local\Atlassian\SourceTree。写入如下内容:
[
{
"$id": "",
"$type": "SourceTree.Api.Host.Identity.Model.IdentityAccount, SourceTree.Api.Host.Identity",
"Authenticate": true,
"HostInstance": {
"$id": "",
"$type": "SourceTree.Host.Atlassianaccount.AtlassianAccountInstance, SourceTree.Host.AtlassianAccount",
"Host": {
"$id": "",
"$type": "SourceTree.Host.Atlassianaccount.AtlassianAccountHost, SourceTree.Host.AtlassianAccount",
"Id": "atlassian account"
},
"BaseUrl": "https://id.atlassian.com/"
},
"Credentials": {
"$id": "",
"$type": "SourceTree.Model.BasicAuthCredentials, SourceTree.Api.Account",
"Username": "username@email.com"
},
"IsDefault": false
}
]
(2)、重新启动软件,顺利进入界面,如图:

2、拉取代码
sourcetree是免费的Git客户端,如何利用它从gitlab上拉取下代码呢?步骤如下:
(1)、下载并安装git;
(2)、运行git,生成秘钥,
命令为:ssh-keygen -t rsa,如图:
秘钥生成的目录在你系统盘用户目录下的\.ssh\id_rsa.pub


(3)、在自己的git服务器上绑定自己git公钥;
(绑定操作:Settings --> SSH Keys --> Add key(打开本地公钥文件粘贴里面所有内容)),如图:

(4)、利用sourcetree拉取代码。
点击"工具-->选项-->一般",注意以下4个部分的设置,如图:

点击确定按钮之后,点击"文件-->克隆/新建",打开克隆tab,如图:

源路径:为要拉取项目的git路径;目标路径:为自己要存放该项目的本地资源路径;名字:为项目名字,一般会自动获取填充。
点击克隆按钮,项目开始拉取到本地。等待项目拉取完毕后,我们就可以开始自己的本地开发。
3、上传代码;
项目克隆完成之后,我们拉取的是master分支上的代码,由于master分支是主分支,项目多人开发的情况下,很容易造成冲突。
所以我们一般会在gitlab远程新建一个自己的分支,如命名为:dev。
(1)、新建自己的远程开发分支并在sourcetree中切换到该分支;如图:

双击origin--->dev,就可以切换到dev开发分支。
(2)、切换到文件状态,暂存需要提交的代码,写好描述,点击“拉取”选项(相当svn的update操作)更新代码并点击提交;
(3)、点击“推送”选项,选择正确的本地和远程分支,确定推送(相当于svn的commit操作)。
(4)、等待项目管理员将dev分支代码合并到master分支,完成从开发到上传。
4、其他主要功能介绍
4.1、Git工作流详细介绍
4.2、配置忽略文件;
利用.gitignore过滤文件,如编译过程中的中间文件,等等,这些文件不需要被追踪管理。 正常情况下,管理员创建项目后需要直接将忽略文件创建好。
使用sourcetree添加忽略文件的方法,如图:

忽略文件中有 忽略文件夹和单个文件,如图:

4.3、分支管理和使用
点击“分支”选项,切换到“新分支”选项。
1、可以在当前的版本下创建分支
2、选择指定的提交创建分支
3、点击“创建分支”
如图:

分支提交到服务器。
定位到需要提交的分支上,点击“推送”选项,选择正确的分支,确定后完成推送。如图:

4.4、解决冲突
多人开发时,由于修改了同一个文件,可能会有文件冲突的情况。
拉取代码时,会有冲突提示,解决完相关的冲突文件,重新提交即可。
5、相关提示信息含义及小窍门
5.1、冲突信息 ,如图:

5.2、先更新信息

5.3、小窍门: 先拉取后推送。

如果推送时,拉取右上方显示数字,则需要先拉取再推送。
6、SourceTree&Git部分名词解释
- 克隆(clone):从远程仓库URL加载创建一个与远程仓库一样的本地仓库
- 提交(commit):将暂存文件上传到本地仓库(我们在Finder中对本地仓库做修改后一般都得先提交一次,再推送)
- 检出(checkout):切换不同分支
- 添加(add):添加文件到缓存区
- 移除(remove):移除文件至缓存区
- 暂存(git stash):保存工作现场
- 重置(reset):回到最近添加(add)/提交(commit)状态
- 合并(merge):将多个同名文件合并为一个文件,该文件包含多个同名文件的所有内容,相同内容抵消
- 抓取(fetch):从远程仓库获取信息并同步至本地仓库
- 拉取(pull):从远程仓库获取信息并同步至本地仓库,并且自动执行合并(merge)操作,即 pull=fetch+merge
- 推送(push):将本地仓库同步至远程仓库,一般推送(push)前先拉取(pull)一次,确保一致
- 分支(branch):创建/修改/删除分枝
- 标签(tag):给项目增添标签
- 工作流(Git Flow):团队工作时,每个人创建属于自己的分枝(branch),确定无误后提交到master分枝
- 终端(terminal):可以输入git命令行
免费Git客户端:sourcetree详细介绍的更多相关文章
- 软件-客户端管理工具-SourceTree-帮助:免费Git客户端:sourcetree详细介绍
ylbtech-软件-客户端管理工具-SourceTree-帮助:免费Git客户端:sourcetree详细介绍 1.返回顶部 1. 一.简介:一个用于Windows和Mac的免费Git客户端.Sou ...
- 2021 从零开始学Git【新版本Git - 8000字详细介绍】
我写的这篇文章,主要是记录自己的学习过程,也希望帮助读者少踩坑(比如不同版本可能命令不兼容等).本文面向git零基础初学者,建议读者按照文中命令自己全部操作一遍(注意运行环境). 我的运行环境:win ...
- Git客户端SourceTree回滚到远程仓库和切换分支
使用SourceTree将远程仓库回滚到某一次提交 原理:在本地需要回滚的commit上创建一个分支,将该分支合并到远程仓库. 步骤 1.在需要回滚的commit上右键创建分支 创建分支 2.输入新的 ...
- 全网最详细的Git学习系列之介绍各个Git图形客户端(Windows、Linux、Mac系统皆适用ing)(图文详解)
不多说,直接上干货! 一.TortoiseGit - The coolest Interface to Git Version Control TortoiseGit 是 TortoiseSVN 的 ...
- SourceTree 01 - git 客户端介绍
SourceTree - git客户端介绍 SourceTree系列第1篇 --->> SourceTree 01 - git 客户端介绍(http://www.cnblogs.com/g ...
- GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
最近听同事说他都在使用GitHub,GitHub是程序员的社区,在里面可以学到很多书上学不到的东西,所以最近在准备入手这方面的知识去尝试学习,正好碰到这么详细完整的文章,就转载了,希望对自己和大家有帮 ...
- 【代码管理】GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
GitHub操作总结 : 总结看不明白就看下面的详细讲解. . 作者 :万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details ...
- 基于Git项目管理客户端SourceTree的免注册安装及远程连接方法
作为程序员,不可避免的要在github上查询代码,而在企业项目中,为了使得项目好管理需要使用项目管理客户端,所以接下来详细讲解一下基于git的sourceTree在windows系统下的安装及与Git ...
- 详细介绍如何在win7下首次实现通过Git bash向Github提交项目
详细介绍如何在win7下首次实现通过Git bash向Github提交项目 引自:http://jingpin.jikexueyuan.com/article/35944.html 作者: wddoe ...
随机推荐
- OC语言(五)
三十七.SEL类型-方法的包装 发送消息其实就是发送SEL. 每个方法都有与之对应的SEL类型数据. 第一次调用方法,先把方法包装成为SEL数据,再根据SEL去找方法地址,最后根据方法地址调用相应的方 ...
- Android开源项目——设置图文居中的按钮 IconButton
本文介绍一下一个小众的开源项目--IconButton. 本文原创,转载请注明出处: http://blog.csdn.net/maosidiaoxian/article/details/435602 ...
- 如何编写51单片机超声波测距SR04_lcd1602显示程序
超声波测距在我们日常生活中很常见,比如说车在倒退的时候,为了防止车撞到障碍物,会在车尾加上一个超声波测距模块.在智能车比赛中,也有超声波测距模块等等.可见超声波非常的重要,接下来,我们上代码研究一下如 ...
- AngularJS进阶(十三)JS利用正则表达式校验手机号
JS利用正则表达式校验手机号 注:请点击此处进行充电! 绪 由于项目需求,需要在前端实现手机号码的校验.当然了,对于基本的格式校验应该放在客户端进行,而不需要再将待校验的手机号发送至服务端,在服务端完 ...
- 【一天一道LeetCode】#8. String to Integer (atoi)
一天一道LeetCode系列 (一)题目 Implement atoi to convert a string to an integer. Hint: Carefully consider all ...
- FFMPEG类库打开流媒体的方法(需要传参数的时候)
使用ffmpeg类库进行开发的时候,打开流媒体(或本地文件)的函数是avformat_open_input(). 其中打开网络流的话,前面要加上函数avformat_network_init(). 一 ...
- linux服务搭建---yum源服务搭建
yum源服务 1.本地yum源 2.yum源不在本地 1> ftp服务器 2> nfs服务器 1.本地yum源 前提: linux系统 找到一个相应 ...
- "C#":MySql批量数量导入
现在对数据库(以MySql为例)的操作大多会封装成一个类,如下例所示: namespace TESTDATABASE { public enum DBStatusCode { ALL_OK, MySq ...
- Gradle 1.12用户指南翻译——第四十章. ANTLR 插件
本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...
- 苹果新的编程语言 Swift 语言进阶(四)--字符串和收集类型
一.字符串( String )和字符类型(Character) 字符串是一种字符的带次序的收集类型(相当于数组),字符是字符串中的元素. 在Swift 语言中,字符串是编码独立的Unicode字符的 ...