pro git 读书笔记 3 Git 分支

时间:2023-12-05 08:42:56

分支

  • 新建分支:git branch 分支名
  • 切换到该分支:git checkout 分支名
    补充:以上两条语句等价于一句:git checkout -b 分支名
    转换分支的时候最好保持一个清洁的工作区域。(也就是commit之后再转换)
    Git 会把工作目录的内容恢复为检出某分支时,它所指向的那个 commit 快照。
  • 将A分支合并到主分支 master:
    • git checkout master
    • git merge A
      • 当master是A的直接祖先时:快速合并完成
      • 当master与A有共同祖先,并且没有修改同一文件的同一部分内容时:Git可以自行找到最佳合并祖先
      • 但是如果修改了同一文件的同一部分:只能手动解决!解决步骤:
        • 用git status查看冲突 unmerged
        • 手动解决
        • 解决后,用git add标记为已解决
        • 用git status查看没有问题后,用 commit 完成这次合并提交
  • 删除分支A: git branch -d A
  • 查看所有分支:git branch -v
  • 已被并入当前分支的分支:$ git branch --merged
  • 尚未合并的分支:git branch --no-merged

    多人开发例子

    他人:修改tryagain,已经push了
    自己:修改tryagain,readme,增加text1,push时提示出错
    所以应该先pull,但由于修改了同一文件tryagain,所以pull时,自动merge失败,需手动合并。
    打开目录下的tryagain文件,修改后保存,git add,git commit,git push即可