git相关常用操作:git 拉新分支、分支关联、合并分支、分支删除

在开发中,我们可能要做这些工作,从master分支拉一个开发分支dev ,开发、单测完合并到test分支测试测试完了上线

1、从master分支拉一个新dev分支到本地,在将新拉的本地分支和远程分支关联起来

2、将dev分支合到test分支或master分支

3、从远程拉取已存在分支到本地

4、提交本地分支作为远程分支(合并分支后可以用)

5、删除本地分支、远程分支

ok 下面我们从这5个方面来看看:

1、从master分支拉一个新dev分支到本地,在将新拉的本地分支和远程分支关联起来

1.1.从远程master分支拉取一个dev分支到本地,并将这个新本地dev分支push到远程,在将本地dev分支和远程dev分支关联起来

1.1.1. 切换到被copy的分支(master),并且从远端拉取最新版本

$git checkout master

$git pull

 

1.1.2. 从当前分支拉copy开发分支

$git checkout -b dev

Switched to a new branch 'dev'

 

1.1.3. 把新建的分支push到远端
$git push origin dev

 

1.1.4. 拉取远端分支
$git pull

There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

git branch --set-upstream-to=origin/<branch> dev

经过验证,当前的分支并没有和本地分支关联,根据提示进行下一步:


1.1.5. 关联

$git branch --set-upstream-to=origin/dev

注意:这里branch之后都是没有空格的,如果有空格则是错误命令

 

1.1.6. 再次拉取 验证

$git pull

OK 到此搞定 结束!

 

/*****************************************************/

1.1.7、从远程拉取分支到本地(当远程已经有分支的时候可以这样用)

 

git checkout -b 本地分支名x origin/远程分支名x

 

1.1.8、提交本地test分支作为远程的test分支(合并分支后可以用)

git push origin test:test   // 提交本地test分支 作为远程的test分支

 

2、就是将dev分支合并到test分支(开发完,单测后将dev分支代码合并到test分支提测)

分支合并步骤(将dev分支合并到test分支)

2.1.分支切换: git  checkout test

将本地从dev分支切换到test分支

2.2.将本地test分支更新为最新:  git pull

将本地test分支从远程跟新为最新

2.3.分支合并: git merge dev

将本地dev分支合并到本地test分支

2.4.提交本地test分支作为远程的test分支: git push origin  test:test

在我们合并之前把本地test分支从远程更新为了最新的代码版本,所以这时如果没有人提交新代码到test远程分支,则test本地代码和远程代码是一样的,这时我们在合并本地dev的代码到本地test,这时本地test的代码相比远程就多dev中开发的代码,所以这时我们提交本地test分支作为远程的test分支是正常。

 

3、从远程拉取分支到本地(当远程已经有分支的时候可以这样用)


git checkout -b 本地分支名x origin/远程分支名x  


4、提交本地test分支作为远程的test分支(合并分支后可以用)

git push origin test:test   // 提交本地test分支 作为远程的test分支


5、删除本地分支、远程分支

5.1.删除本地分支   git branch -d  branchName 

      强制删除本地分支 git  branch -D branchName

注意:在删除本地分支的时候要切换到其他分支,在去删除要删除的分支哦……你在要删除的分支下是没法删除该分支的,因为删除了你就没地方去了!!!

5.2.查看本地  -v 和远程分支  -a。前面带*号的代表你当前工作目录所处的分支

$ git branch -v 

$ git branch -a    

5.3.删除远程版本

git push origin :br-1.0.0  

 

5.4.删除远程分支

5.4.1.在Git v1.7.0 之后,可以使用这种语法删除远程分支:

 

   $ git push origin --delete branchName

 

5.4.2.可以使用这种语法,推送一个空分支到远程分支,其实就相当于删除远程分支:

 $ git push origin :branchName  


这里注意 在origin 后面也就是":"冒号前面是有一个空格的,也就是吧一个空分支push到远程,这样就相当于删除了远程分支。
分支合并的流程,其中要注意在合并之前一定要pull 为最新版本,不然会把代码覆盖掉!

 

6、git合并遇到冲突时,怎么取消当前合并。

当合并分支时遇到错误或者冲突,分支旁边会多出“|MERGING”这个东西

有这个状态存在时,会导致后面想要再合并的时候提示如下:

所以需要先取消这次合并,使用“git merge --abort”命令

 

7、查看当前git分支是基于哪个分支创建的

可以通过查看提交日志来找到所基于的分支,即通过git log命令,不过需要借助一些命令选项。你可以使用--decorate选项来在提交日志中显示分支信息,以及--graph选项以ASCII图形形式显示分支历史,当然你还需要--all选项来保证所有的分支信息都显示出来:

git log --graph --all --decorate

或者

git log --graph --all --decorate=short

然后你可以在结果中找到当前分支,并顺着该分支的线找到其父分支。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值