git fetch --prune // 强制拉取所有远程分支 (更新远程分支)
git stash // 加入缓存
git stash pop // 恢复缓存
git stash list // 查看缓存列表
git stash clear // 删除所有缓存列表
git fetch -p 获取远程仓库的新分支 以及 删除远程仓库已删除的分支
场景: push代码出现在错误的分支,想要撤回,并且保留代码
git reflog // 查看提交记录 id
git reset --hard 09d0db1 // 根据id跳转到指定的分支 不会删除历史分支
场景: 合并了某个分支,但不想使用这个分支代码,想撤销合并,可以找到操作分支之前id,进行操作
步骤:
1. git log 找到错误的commit记录
2. git reset --soft xxxxxxxx(错误记录的前一条commit id)
3. git log 已经找不到错误的commit记录
4. git push --force origin 将本地代码强制push到远程,成功后远程分支也将去除错误的commit记录
场景: 合并了某个分支,已被别人拉取,并且同步到了最新分支,想要撤回自己的分支
步骤:
1. git log 找到想撤回的commit记录
2. git revert 撤销的commit ID
3. 这个时候,代码已经全部回到合并前的状态了,剩下的就是解决冲突
4. 再把该修改提交上去