Git的分支管理常用命令

分支管理

命令 作用
git branch 查看当前分支
git checkout/git switch 分支名称 切换分支
git merge 分支名称 将指定分支合并到当前分支
git branch -d 分支名称 删除指定分支
git diff 分支名称1 分支名称2 显示两个分支之间的差异
git diff 分支名称1 分支名称2 file 显示两个分支之间指定文件的差异
git stash 临时封装

git stash

Git stash 临时封装 (快照)使用场景:当前分支没有开发完,需要切换到其他分支。Your local changes to the following files will be overwritten by checkout ,please commit your changes or stash them before you switch branches。您本地对以下文件的更改将被checkout覆盖,请在切换分支之前commit或将其stash。
解决 :在其他分支操作完之后,切换到了原来分支需要取出stash中刚刚保存的东西:git stash apply stash{数字},就会恢复到切换分支之前的代码。之后就可以删除stash临时存放的东西,当然也可以不删,删除stash记录:git stash pop(删除顶端)与 git stash clear(删除所有)

gitmerge与git rebase

git merge git rabase
合并 变基
idea可视化页面会显示分支的合并 idea可视化页面只有一条线

在这里插入图片描述注意:不建议在多人合作的公共分支上使用rebase,假设向A合并B分支,尽管B分支的commit记录比A分支的早,假设A分支的最后一次commit是在早上9点,B分支的三条commit记录是在早上8点,7点,6点,向A合并B的时候,这三条commit记录会变成你合并时候的时间9点01分,从而会跑到A分支的上边。

git merge --squash

向A合并B分支,B分支有太多的commit记录,如果直接合并,所有的commit记录会直接合并到A分支,影响A分支的可观察性,git merge --squash 会将B分支的所有commit记录合并为一条提交到A分支上。

cherry-pick

向A合并B分支,B分支有太多的commit记录,既不想变成一条也不想全部提交commit记录,就可以用cherry-pick挑选几个提交。在idea可视化工具里边,会有想樱桃一样的图标,那个就是cherry-pick,按住shift选择几个commit记录点击樱桃图标就可执行。

猜你喜欢

转载自blog.csdn.net/qq1350975694/article/details/108005783
今日推荐