【git】测试工程师用到常用的git命令

正常情况下,我们的工作流就是 3 个步骤,对应上图中的 3 个箭头线:
git add .git commit -m "comment" git push
  1. git add .把所有文件放入暂存区
  2. git commit把所有文件从暂存区提交进本地仓库
  3. git push把所有文件从本地仓库推送进远程仓库

检查修改
已修改,未暂存 (还没有做 git add . 之前)-> git diff
已暂存,未提交 (执行 git add . 后)-> git diff --cached
已提交,未推送 (执行 git commit 后)-> git diff master origin/master
撤销修改
已修改,未暂存 (还没有做 git add . 之前)-> git checkout . 或者 git reset --hard
已暂存,未提交 (执行 git add . 后)->(
git reset git checkout .
或者 git reset  --hard
git reset 只是把修改退回到了 git add . 之前的状态,也就是说文件本身还处于 已修改未暂存 状态,你如果想退回 未修改 状态,还需要执行 git checkout .
或许你已经注意到了,以上两个步骤都可以用同一个命令 git reset --hard 来完成。是的,就是这个强大的命令,可以一步到位地把你的修改完全恢复到 未修改 的状态。)
已提交,未推送 (执行 git commit 后)-> git reset --hard origin/master
( 还是这个 git reset --hard 命令,只不过这次多了一个参数 origin/master ,正如我 们上面讲过的, origin/master 代表 远程仓库 ,既然你已经污染了你的 本地仓库 ,那么就从 远 程仓库 把代码取回来吧。 )

已推送 ( git add 了,又 git commit 了,并且还 git push ) 这时你的代码已经进入 远程仓库 。如果你想恢复的话,还好,由于你的 本地仓库 远程仓库 是等价的,你只需要先恢复 本地仓库 ,再强制 push 远程仓库 就好了:
git reset --hard HEAD^ git push -f

错误push到了远端:
1.回滚本地的最新的push记录
git reset --hard HEAD~1
2.回滚远端的
git push --force
------------------------------------------------------------------
错误commit,没有push到远端
git log
复制 id73cf921b5bbd422d1a
#回滚到哪一条
git reset 73cf921b5bbd422d1a

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值