Git使用常见场景

172 阅读1分钟

一般来说,我们不会在master分支上修改代码,保证master分支和远程master分支的一致性。

切换分支

从a分支切换到b分支工作。在a分支执行 git checkout b

  • a分支如果有未commit的文件,不能直接切换到b分支。需要在a分支先执行 git stash 隐藏修改,然后执行 git checkout b,等将来切换回a分支的时候,使用 git stash pop 恢复修改。

推送分支到远程,并希望合并到master

将a分支推送远程,并创建合并到master分支的申请

由于远端master分支已经被修改过,因此a分支需要先合并master分支的修改再推送

第一步:切换到master分支,并执行get pull 拉取远程master分支
第二步:切换到a分支,并执行 git rebase master 合并master分支的修改

合并多个commit

合并多个commit

第一步: git rebase -i HEAD~3  表示合并最近3个commit
第二步: 将除了第一个的pick,其他都改为 s 或 squash
   pick 3ca6ec3   '注释**********'
 
   s 1b40566   '注释*********'
 
   s 53f244a   '注释**********'
第三步:如果有冲突,修改冲突文件。修改完成之后执行 git add .  git rebase --continue
第四步:git push -f 直接强制推送到远端