网站首页 > 博客文章 正文
一、前言
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的使用,自己多点点应用下,很简单的^_^
今日分享语句: 要从容地着手去做一件事,一旦开始,就要坚持到底。
- 上一篇: 程序员如何优雅地使用 macOS?
- 下一篇: GIT在Windows和Mac安装和使用
猜你喜欢
- 2024-11-24 这是我见过的最复杂的发版流程,你们那里怎么管理发版部署的呢?
- 2024-11-24 如何做一名出色的初级开发?
- 2024-11-24 99%的程序员都在用Lombok,原理竟然这么简单?
- 2024-11-24 2.8 git版本管理3 怎么用sourceTree新增分支和修改后提交
- 2024-11-24 关于Sourcetree 关联gitee的操作
- 2024-11-24 4款代码管理工具 和 12款GIT GUI软件
- 2024-11-24 VS Code使用Git可视化管理源代码详细教程
- 2024-11-24 深入浅出全栈工程师: 搭建OSX开发环境
- 2024-11-24 AI小技能:让ChatGPT帮助整理Mac上的应用
- 2024-11-24 GitHub:图形化交互让你轻松管理代码「图解」
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)