一、前言
SourceTree安装和简单使用说明。
二、SourceTree安装
下载地址 https://www.sourcetreeapp.com
三、SourceTree使用
1、克隆仓库&拉取代码&推送代码
这里先新建一个仓库git-project
克隆
随便写点内容,然后暂存到本地
然后写点提交信息,推送到远程仓库
对于不想要的文件,可以进行移除,或者丢弃本次修改的内容。
如果远程仓库有代码更新,可点击拉取最新代码。
2、创建分支&合并分支代码
创建dev分支
写点内容提交
合并dev分支代码到master分支
合并完了记得推送到远程仓库
如果遇到冲突(即2个人在同一文件同一位置修改了内容)
打开此冲突文件进行合并修改再提交即可
3、标签
用于对项目重要里程碑节点标识记录 ex:线上发版1.0.0
4、子模块
将另外一个git仓库作为子模块存储。
ex: maven多模块项目开发中可引入一个公共的子模块
如果对子模块下的内容作修改,需要在双击在子模块中提交修改
5、子树
和子模块有点类似,但子树包含其历史提交版本记录。
对子树下的内容修改之后,可进行单独的推送/拉取
也可查看子树修改的内容
6、贮藏
1.部分个人配置,不方便提交,比如数据库配置文件jdbc.properties。每次pull都会覆盖掉自己的配置。 2.代码功能未写完,但又要临时写新功能代码。之前功能的代码由于未写完,不能提交。
这时候就可以使用贮藏功能。
下次写新功能时,应用贮藏区数据,之前的配置就乖乖回来了。
7、重置提交
- 版本3:add 3.txt
- 版本4:add 4.txt
- 版本5:add 5.txt
ex:由于新需求提交的版本4和版本5做错了,想要回归至版本3,但又可能在有些场景需要保留版本4和版本5的内容或彻底不要,这时候就可以使用重置提交。
a、软合并:保持所有本地改动
3之后提交的文件不会丢失,且加入git版本管理
b、混合合并:保持工作副本并重置索引
3之后提交的文件不会丢失,且移出git版本管理
c、强行合并:丢弃所有改动过的工作副本
3之后提交的文件丢失
以强行合并为例,操作之后需要强制推送,因为本地仓库的HEAD指向的版本比远程仓库的旧。
这里无法勾选强制推送,那就使用如下命令完成此操作即可。
git push -f
查看远程仓库
8、回滚提交
- 版本6:add 6.txt
- 版本7:add 7.txt
- 版本8:add 8.txt
ex:发现之前提交的版本6有bug,想要撤销版本6的提交,但又想保留版本7和版本8的提交,这时候就可以使用回滚提交。
推送
四、Git工作流
- master:主分支,用于最终发布版本,整个项目中有且只有一个。
- develop:开发分支,原则上项目中有且只有一个。
- feature:功能分支,用于开发一个新的功能。
- release:预发布版本,介于develop和master之间的一个版本,主要用于测试。
- hotfix:修复补丁,用于修复master上的bug。
初始化
tips: 需要先创建一个develop分支
在develop分支建立新的功能
开发商品功能
随便写点内容提交
完成新功能开发
tips: 变基和merge类似。 变基可将分支历史并入主线。
开发完新功能之后,建立新的发布版本
完成发布版本,即合并到master分支进行上线部署准备
在远程仓库查看此次发版信息
如果线上出现bug,需要修复,则建立新的修复补丁
将bug修复之后提交代码
完成修复补丁
整条流水线如下
关于SourceTree的使用,自己多点点应用下,很简单的^_^
今日分享语句: 要从容地着手去做一件事,一旦开始,就要坚持到底。