git拉取远程分支到本地
-
-
当本地有其他分支的代码库时候
git clone .....
(通过clone下主分支或其他分支的数据)当需要本地分支和远程分支建立映射
- 创建远程origin的dev分支到本地
git chekout -b dev origin/dev
, 本地仓库新建dev分支与远程分支dev映射,且自动切换到本地的dev分支 git pull
git add .
git commit -m 'xxx'
git push
git branch -a 或者 -r
等等
本地分支不需要与远程分支建立映射
git fetch origin 远程分支名 本地分支名dev
会在本地新建分支dev,但不会自动切换,远程分支的代码已经拉取到本地分支中,当不会和远程分支建立映射
git merge dev
可以将本地分支与远程分支合并 - 创建远程origin的dev分支到本地
-
-
- 当本地没有其他分支的代码库时候
git clone -b 分支名storyname 仓库地址
将远程分支拉取到本地,并在本地建立stroyname分支,与远程对应分支建立追踪管分析,HEAD指向当前分支
- 当本地没有其他分支的代码库时候
git远程分支与本地分支合并
多人协同开发时候,A,B各自创建一个新的分支开发, A开发完成后将代码推送到远程,B如何更新?
方法: B拉去远程代码与本地分支合并,最后发布新版本代码到远程
- 假设本地开发分支为mm
git branch -r # 获取远程分支,带有origin/xx 是远程的
git fetch origin dev:temp # 拉取远程分支dev到本地,本地新建分支为develop
git diff temp # 查看develop与本地原来的分支temp的不同
git merge temp # 将temp分支与本地合并,之后提交新版本到远程代码库
git branch -d temp # 删除本地分支
下面为扩展
git checkout -b dev # 创建远程分支
git push origin dev # 推送新分支到仓库
git branch --set-upstream-to=origin/dev #关联远程仓库
git push origin --deleter[branchname] # 删除远程分支
git checkout master #首先切换到master分支
git pull origin master #更新远程master分支代码
git merge dev #dev分支的代码合并到master上
git push origin master #push到远程master上
也可以直接用idea中git的merge功能,这样有冲突可以页面直接解决