在使用git时,假如远程仓库有 dev 和 master 两个分支,master 作为一个稳定版分支,可用于直接发布产品,日常的开发则 push 到 dev 分支,那本地是不是要从 dev 分支中创建一个本地分支,然后在这个分支的 push 的动作是默认推到远程 dev 分支上?
解惑
一、远程仓库有master和dev分支
1.克隆代码
git clone git@github.com:XX/master-dev.git 
#这个git路径是无效的,示例而已
2. 查看所有分支
git branch --all 
# 默认有了dev和master分支,所以会看到如下三个分支
# master[本地主分支] origin/master[远程主分支] origin/dev[远程开发分支]
# 新克隆下来的代码默认master和origin/master是关联的,也就是他们的代码保持同步
# 但是origin/dev分支在本地没有任何的关联,所以我们无法在那里开发
3. 创建本地关联origin/dev的分支
git checkout dev origin/dev 
# 创建本地分支dev,并且和远程origin/dev分支关联,本地dev分支的初始代码和远程的dev分支代码一样
4. 切换到dev分支进行开发
git checkout dev  # 这个是切换到dev分支,然后就是常规的开发
更多
二、假设远程仓库只有mater分支
1. 克隆代码
git clone https://github.com/master-dev.git 
# 这个git路径是无效的,示例而已
2. 查看所有分支
git branch --all 
# 默认只有master分支,所以会看到如下两个分支
# master[本地主分支] origin/master[远程主分支]
# 新克隆下来的代码默认master和origin/master是关联的,也就是他们的代码保持同步
3. 创建本地新的dev分支
git branch dev  # 创建本地分支
git branch # 查看分支
# 这是会看到master和dev,而且master上会有一个星号
# 这个时候dev是一个本地分支,远程仓库不知道它的存在
# 本地分支可以不同步到远程仓库,我们可以在dev开发,然后merge到master,使用master同步代码,当然也可以同步
4. 发布dev分支
发布dev分支指的是同步dev分支的代码到远程服务器
git push origin dev:dev # 这样远程仓库也有一个dev分支了
5. 在dev分支开发代码
git checkout dev  # 切换到dev分支进行开发
# 开发代码之后,我们有两个选择
# 第一个:如果功能开发完成了,可以合并主分支
git checkout master  # 切换到主分支
git merge dev  # 把dev分支的更改和master合并
git push  # 提交主分支代码远程
git checkout dev  # 切换到dev远程分支
git push  # 提交dev分支到远程
# 第二个:如果功能没有完成,可以直接推送
git push  # 提交到dev远程分支
# 注意:在分支切换之前最好先commit全部的改变,除非你真的知道自己在做什么
6. 删除分支
git push origin :dev  # 删除远程dev分支,危险命令哦
# 下面两条是删除本地分支
git checkout master  # 切换到master分支
git branch -d dev  # 删除本地dev分支
(项目中在git上原本只有maser分支, 拉倒本地新建dev分支, 然后通过上述第二种方式将dev分支推到git服务器, git服务器上有master和dev两个分支, 一般开发是会在本地的dev分支上开发, 然后推送到git服务器上dev分支, 并且在master分支上和本地的dev分支合并, 并将本地的master分支推送到git服务器上的mater分支上, 作为发布的mater分支)

转载于:https://www.cnblogs.com/kexianting/p/8525732.html

git如何利用分支进行多人开发相关推荐

  1. git 创建本地分支及远程分支

    1.创建分支 git branch dev 2.查看本地分支: git branch 注:名称前面加* 号的是当前的分支 3.查看远程分支: 加上-a参数可以查看远程分支,远程分支会用红色表示出来(如 ...

  2. Git怎样做分支管理

    查看全文 http://www.taodudu.cc/news/show-3787419.html 相关文章: git分支规范 实际项目中如何使用Git做分支管理 多人开发 Git 分支管理详解 gi ...

  3. git常用操作--分支

    工欲善其事,必先利其器 分支 分支是简单的概念,和日常生活中用到的一样,比如说头发分杈:从一根开始分成了2根甚至更多,每一个分杈就是一个分支. git的分支功能让它的使用方便了很多.每一个分支是相互独 ...

  4. git更新远程分支到本地

    场景:git远程新建分支,在本地开发工具中(如vscode)切换远程新建的分支时,提示不存在当前分支,如下图: 1.此时需要同步下远程的分支,采用如下命令: git branch -r | grep ...

  5. Git学习总结(12)——多人开发 Git 分支管理详解

    1.前言 在上一篇博客中我们主要讲解了Git 远程仓库,相信大家对远程的Git仓库有一定的了解,嘿嘿.在这一篇博客中我们来在大家讲解一下Git 分支管理,这可以说是Git的又一大特点.下面我们就来学习 ...

  6. 多人开发 Git 分支管理详解

    注,测试机 CentOS 5.5 x86_64,Git 服务器版本:git version 1.8.2.1,客户端版本:git version 1.9.2.msysgit.0.所有软件请到这里下载:h ...

  7. Git之深入解析如何使用Git的分布式工作流程与如何管理多人开发贡献的项目

    一.分布式工作流程 如果现在拥有一个远程 Git 版本库,就能为所有开发者共享代码提供服务:在一个本地工作流程下,如果你也已经熟悉了基本 Git 命令,现在就可以学习如何利用 Git 提供的一些分布式 ...

  8. Git之深入解析Git的杀手级特性·分支管理与分支变基的开发工作流以及远程分支的跟踪

    一.Git 分支简介 几乎所有的版本控制系统都以某种形式支持分支,使用分支意味着可以把工作从开发主线上分离开来,以免影响开发主线.在很多版本控制系统中,这是一个略微低效的过程,常常需要完全创建一个源代 ...

  9. git 只merge部分_[Skill]俩小时掌握多人开发中git的主要用法

    前言 几个月前看完了git文档,但是在实际开发中对很多git命令的具体影响仍有疑惑,比方说pull.fetch和rebase三个命令和检出位置拎不清. Git - Book​git-scm.com 安 ...

最新文章

  1. 【前端】vue.js实现按钮的动态绑定
  2. c++禁止进程被结束_多进程任务实现
  3. 数据库中的乐观锁与悲观锁详解
  4. 关于instancetype代替id的使用区别
  5. PHP中遍历关联数组的方法
  6. .NET 3.5 : 读写RSS或者ATOM
  7. FPGA开发全攻略——ISE基本操作
  8. C# winform中 窗体缩放自适应的方法(不同电脑/不同分辨率)
  9. Mysql的SQL语句汇总
  10. centos绑定多个ip CentOS一个网卡设置多个IP
  11. 【常用表】三角函数基本公式
  12. 计算机考研压分的学校,考研压分院校盘点 | 都说这些学校今年压分严重?!
  13. Linux dd烧写系统
  14. 如何正确地卸载Service Worker?
  15. [SV]SystemVerilog Structured Procedures --- always_comb、always_ff、always_latch
  16. [vijos 1770]大内密探
  17. iview 表格合并行
  18. Matlab绘图------特殊图形------直方图
  19. js手机端 下拉刷新
  20. 【WordPress报错】cURL error 52: Empty reply from server(http_request_failed)

热门文章

  1. SpringBoot启动项目时提示:Error:(3, 32) java: 程序包org.springframework.boot不存在
  2. VS2013中提示:没有可放置在工具箱上的组件
  3. C#中控制窗体的显示与隐藏
  4. web.xml还不会配置编码过滤器?
  5. linux子系统使用rstudio,Windows 10 Linux子系统 (wsl)学习手记
  6. MapXtrem2004经典代码:asp.net鹰眼
  7. [转].Net实现本地化简易教程
  8. bat常用命令操作符列表
  9. iOS - PassData
  10. 会声会影如何渲染高清视频