git
git的一些常用技巧
贫道法号说不得
萌新初长成~~~
展开
-
开发工具: git 13、使用二分法查找哪一次提交引入了线上bug
文章目录场景命令实战原理场景当线上有 bug 需要排查 bug 时,要最终定位到是哪个类的哪几行代码造成的这个 bug,此时就需要去看到底是哪一次提交的,是谁对这几行代码的修改造成了这次线上 bug,需要去定位责任人,发生时间等。如果是比较严重的 case,比如导致用户无法支付,给公司造成了500万的经济损失,这肯定是要追查谁是责任人的。命令#开始二分查找git bisect star...原创 2020-02-13 21:09:24 · 346 阅读 · 0 评论 -
开发工具: git 12、远程和本地同时撤回分支合并操作
文章目录git merge --abortgit reset --hard head^推送到远程仓库之后想要撤回衍生的问题总结git merge --abort使用场景:如果两个分支 merge 时出现了冲突,临时打算取消 mergegit reset --hard head^使用场景:如果仅仅是在本地完成了 merge 后想要撤回,可以直接将分支挪回 merge 之前的 commit推...原创 2020-02-13 21:04:17 · 1310 阅读 · 0 评论 -
开发工具: git 11、对本地刚做出的修改、暂存和提交进行撤回
文章目录场景回顾reset 撤回git reset --soft HEAD^git reset HEAD^git reset --hard HEAD^修改了工作区中的内容,同时放入了暂存区,但是还没提交git reset headgit reset --hard HEAD修改了工作区中的内容放入了暂存区且提交了场景如果你刚对工作区的代码进行了修改,或者将部分代码加入了暂存区,或者是提交了一个c...原创 2020-02-13 20:40:02 · 536 阅读 · 0 评论 -
开发工具: git 10、对本地不规范的提交历史进行修改和调整
文章目录1.对上一次commit的备注或者代码进行修改2.对上一次commit加入几行遗漏的代码3.对历史上的多个commit进行修改4.对几天前的commit加入代码5.删除commit以及调整commit的顺序6.将多个commit合并为一个commit7.将一个commit切分为多个commit1.对上一次commit的备注或者代码进行修改比如张三刚刚执行了一个不规范的commit备注...原创 2020-02-13 18:59:07 · 439 阅读 · 0 评论 -
开发工具: git 09、feature分支开发到一半时切换到bugfix分支
文章目录场景stash 保护现场stash 恢复现场方式一方式二方式三(暂存区)删除 stash注意事项场景线上在使用的用户突然发现系统或者 app 运行不正常了,比如说突然网站的商品显示不出来。用户通常会打电话给客服投诉,客服找到运营后,运营直接在缺陷跟踪系统上提工单(比如在 jira 上提一个 task),里面会写上详细的一些 bug 信息,包括什么时间,谁反馈,截图,如何复现等。随后这个...原创 2020-02-13 17:41:34 · 1511 阅读 · 0 评论 -
开发工具: git 08、将暂存区中的多个功能代码分成多次提交
文章目录场景实践场景如果某天下午张三家里突然有事回家了,忘了提交今天写好的那个部门管理的功能,第二天过来接着继续写代码完成了另外一个员工管理的功能,然后一下子 git add --all .,将昨天和今天写好的代码一起都放入暂存区突然,张三想到好像应该将这批代码分成两次提交,才能符合公司的规范啊!实践git add -i此时需要先执行r如上命令,进入交互式模式它会给你列出来当前...原创 2020-02-13 17:27:56 · 542 阅读 · 0 评论 -
开发工具: git 07、细粒度地比较不同分支之间差异
文章目录场景工作区和最近一次 commit 之间的差异最近两次 commit 之间差异查看2个分支之间的差异diff 的意义场景比如说我今天开发了一些代码,还没提交,或者是已经提交了,此时我希望看一下,确认一下今天跟昨天的代码之间的差异是什么?工作区和最近一次 commit 之间的差异# 显示工作区中的代码和仓库中最近一次 commit 的代码之间的差异git diff HEAD昨天...原创 2020-02-13 17:21:02 · 384 阅读 · 0 评论 -
开发工具: git 06、粗粒度地比较不同分支之间差异
文章目录1. 核心回顾2. git log 和 git reflog 的区别3.比较不同分支之间差了哪些 commit 还没有合并3.1 情景13.2 情景23.3 情景33.4 情景43.5 情景51. 核心回顾三个区域(三棵树):工作区,暂存区,仓库分支即指针:commit树无论在哪个分支上做开发和提交,都是在这个项目公共的一个commit树上在添加不同的commit,形...原创 2020-02-13 15:59:26 · 209 阅读 · 0 评论 -
开发工具: git 05、工作流之改进的GitFlow工作流
文章目录改进后的GitFlow工作流总结工作流总结改进后的GitFlow工作流GitFlow工作流如果多个版本频繁并行开发,此时完全参照 GitFlow 是不现实的。因为它会导致在 develop分支 里会混合多个版本的代码,同时在进行集成测试,如果一个版本先测试完,要先进入QA测试环节,是不可以直接基于 develop分支 去拉 release分支 的,因为 release分支 会混合多...原创 2020-02-13 15:30:21 · 369 阅读 · 0 评论 -
开发工具: git 04、工作流之经典的GitFlow工作流
文章目录GitFlow工作流1.创建项目,建立develop分支2.设置push/pull免密码3.创建develop分支4.创建特性分支,RD开始开发张三李四5.提交PR,发起CR张三李四6.基于develop分支的集成测试张三李四7.打tag上线8.线上出现bug9.GitFlow 工作流适用的场景是什么10.GtiFlow 工作流的不足之处在于什么GitFlow工作流1.创建项目,建立...原创 2020-02-13 15:04:31 · 643 阅读 · 0 评论 -
开发工具: git 03、工作流之功能分支工作流
文章目录适用场景本地开发推送远程适用场景面向内部的那种需求不是很频繁的内部系统,5人以内的项目。本地开发首先,在第2节的基础上张三和李四各先修改下代码并完成一次 commit。张三先拉取最新的代码 git pull origin master写代码提交到远程李四拉取最新的 master 分支写代码提交到远程张三拉取最新的 m...原创 2020-02-13 14:14:33 · 257 阅读 · 0 评论 -
开发工具: git 02、git分支
文章目录1. commit object与分支1.1 commit object1.2 分支2.实战模拟2.1 环境准备2.2 创建分支2.3 切换分支2.4 查看分支2.5 查看分支指向的commit object2.6 删除分支2.6 远程分支2.6.1 在码云上新建项目(仓库)2.6.2 添加公钥2.6.4 推送本地分支到远程仓库2.6.5 抓取远程分支新增的分支2.6.6 解决g...原创 2020-02-13 11:44:26 · 228 阅读 · 0 评论 -
开发工具: git 01、git核心知识
文章目录1. VCS1.1 什么是版本1.2 什么是 VCS2. 安装与配置(略)3. git 初使用3.1 创建git版本库3.2 让 git 对代码进行版本控制3.3 忽略文件4. 3区域6状态4.1 3个主要区域4.2 协作关系与文件状态5. git 特有的重要机制理6. git add 和 git commit 幕后原理6.1 git add 命令6.2 文件的三种状态6.3 文...原创 2020-02-13 11:04:30 · 371 阅读 · 0 评论