Git 分支管理

git 分支管理

by 铁乐猫

[toc]

创建分支

创建本地dev分支 local_dev

git branch local_dev

创建本地分支local_dev并切换到local_dev分支

 git checkout -b local_dev

切换分支

切换到分支local_dev

git checkout local_dev

推送本地分支到远程分支

推送本地分支local_dev到远程分支 remote_dev并建立关联关系。

  a.远程已有remote_dev分支并且已经关联本地分支local_dev,且本地已经切换到local_dev

      git push

 b.远程已有remote_dev分支但未关联本地分支local_dev,且本地已经切换到local_dev

     git push -u origin/remote_dev

 c.远程没有有remote_dev分支并且本地已经切换到local_dev

    git push origin local_dev:remote_dev

删除分支

删除本地分支local_dev

  git branch -d local_dev

删除远程分支remote_dev

 git push origin  :remote_dev

 git branch -m | -M oldbranch newbranch 重命名分支,如果newbranch名字分支已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名。

 git branch -d | -D branchname 删除branchname分支

 git branch -d -r branchname 删除远程branchname分支

查看分支

查看本地分支

  git branch

查看远程和本地分支

  git branch -a

合并分支

git rebase <branch_name>用于把一个分支的修改合并到当前分支

git merge <branch_name>也是合并分支。

两者不同的是git merge会合并两个分支产生一个新commit对象【拥有两个parent】。

git rebase 【rebase】顾名思义重新定义起点,即重新定义分支指向commit对象。从而改变commit history。

git rebase也由此可以保持分支的整洁。

修复Bug

问:在公司如果遇到要紧急修复的bug,怎么解决?

  • 在master分支上创建一个debug分支;
    • git branch debug
  • 切换到debug分支上进行修复;
    • git checkout debug
  • 修复完毕后切换到master分支,再合并debug分支到master;
    • git checkout master
    • git merge debug
  • 删除debug分支;
    • git branch -d debug
  • 切换回dev分支,继续进行开发。
    • git checkout dev

【end】

发表评论

电子邮件地址不会被公开。 必填项已用*标注

8 + 11 =