git 命令大全

命令描述
git clone [url]将远程仓库的代码克隆到当前目录
git init初始化仓库
git status查看状态
git add [file]将file文件的修改添加到缓存
git add .将所有文件的修改添加到缓存
git commit -m ‘xxx’提交
git commit - - amend撤销提交(两个 - 之间没有空格)
git log查看提交历史
git reflog查看命令历史
git brach查看分支列表
git branch a从当前分支另外再新建一个分支
git branch -d删除分支
git branch -D强制删除分支
git checkout a切换到a分支
git checkout -b a新建并切换(git branch a + git checkout a)
git checkout v1.0切换到v1.0标签
git checkout - - filename误删的情况下返回源文件(两个 - 之间没有空格)
git stash将当前的修改暂存起来 (git add 过的也可以)
git stash list查看缓存列表
git stash apply恢复暂存
git stash drop删除暂存
git stash pop恢复并删除(git stash apply + git stash drop)
git merge develop将develop 分支合并到当前分支
git tag v1.0将当前分支新建一个标签

一般开发来说,大部分情况下都会拥有两个分支 master 和 develop,他们的职责分别是:

master:永远处在即将发布(production-ready)状态
develop:最新的开发状态

确切的说master、develop分支大部分情况下都会保持一致,只有在上线前的测试阶段develop比master的代码要多,一旦测试没问题,准备发布了,这时候会将develop合并到master上。

但是我们发布之后又会进行下一版本的功能开发,开发中间可能又会遇到需要紧急修复bug,一个功能开发完成之后突然需求变动了等情况,所以GitFlow除了以上master和develop两个主要分支以外,还提出了以下三个辅助分支:

feature:开发新功能的分支,基于develop, 完成后merge回develop
release:准备要发布版本的分支,用来修复bug,基于develop,完成后 merge回develop和master
hotfix:修复master上的问题, 等不及release版本就必须马上上线.基于master,完成后merge回master和develop

什么意思呢?

举个例子,假设我们已经有master和develop两个分支了,这个时候我们准备做一个功能A,第一步我们要做的,就是基于develop分支新建个分支:

git branch feature/A看到了吧,其实就是一个规范,规定了所有开发的功能分支都以feature为前缀。但是这个时候做着做着发现线上有一个紧急的bug需要修复,那赶紧停下手头的工作,立刻切换到master分支,然后再此基础上新建一个分支:

git branch hotfix/B代表新建了一个紧急修复分支,修复完成之后直接合并到develop和master,然后发布。然后再切回我们的feature/A分支继续着我们的开发,如果开发完了,那么合并回develop分支,然后在develop分支属于测试环境,跟后端对接并且测试的差不多了,感觉可以发布到正式环境了,这个时候再新建一个release分支:

git branch release/1.0这个时候所有的api、数据等都是正式环境,然后在这个分支上进行最后的测试,发现bug直接进行修改,直到测试ok达到了发布的标准,最后把该分支合并到develop和master然后进行发布。

关注我的公众号,持续更新优质文章。
微信扫一扫下方二维码即可关注:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值