git小技巧

Q:本地分支develop不小心被删了,怎么办 !!?
A:不要慌,使用 git branch new_develop 5fs3424 重新创建一个新分支,那個 5fs3424 是怎么来的。通常在删掉分支的时候,会有这样的提示:

COPY
1
2
git branch -D develop
Deleted branch develop (was 5fs3424).

Q:A分支想要合并B分支的某个commit ?
A:在A分支上 git cherry-pick 5fs34245fs3424为B分支上commit值,当然也可以接多个~

Q:敲了一半代码, 要切另一个分支改紧急bug怎么办 ?
A:可以使用 git stash 将目前的进度保存,等切回分支后再使用 git stash pop 找回,git stash list 可以查看目前已保存的多个进度。
也可以使用 git commit 提交到本地仓库,等切回分支后再使用 git reset 把 commit 拆开来继续做。

Q: git swith切换分支
A: 为了避免在使用 git checkout命令切换分支跟恢复文件等功能产生混淆,git 2.23 版本新增了 switch 命令,用于切换分支。
具体使用如下:

  1. 切换分支
  • git switch branch_a表示切换到branch_a分支
  1. 创建新分支并切换到改分支:
  • git switch -c branch_a表示创建新的branch_a分支并进行切换,等同于 git checkout -b branch_a
  1. 以某个commit创建分支:
  • 根据git log获取到某个commitId,执行git switch branch_a commitId,表示基于commitId创建一个新分支branch_a
  1. 以某个tag创建分支:
  • git switch branch_a tag以某个commit 创建分支大致相同,只不过commitId需要改为某个tag
  1. 切换到上一个分支: git switch -
  • 当我们在branch_a分支使用git switch branch_b切换到branch_b分支后,使用git switch -即可再次切换回branch_a分支,到了branch_a分支使用git switch -切换回branch_b,也就是在两个分支之间来回切换

作者: 果汁
文章链接: https://guozhigq.github.io/post/b120bc47.html
版权声明: All posts on this blog are licensed under the CC BY-NC-SA 4.0 license unless otherwise stated. Please cite 果汁来一杯 !