github 分支管理

最近有同事问我git 如何管理分支,这里我以github为例,做下工作中常用的分支管理操作。

分支管理

  作用:假设你准备开发一个新功能,但需要两周才能完成,第一周写了60%,如果提交,由于代码还没写完,不完整的代码库会导致别人不能干活,如果等代码全部写完在一次提交,又会存在丢失每天进度的风险。有了分支,可以避免上述问题,创建一个属于自己的分支,别人看不到,还继续在原来的分支上正常工作,而我们在自己的分支上干活,想提交就提交,直到开发完毕后,在一次性合并到原来的分支上,这样,即安全又不影响别人工作。

特点:Git分支是与众不同的,无论创建、切换、和删除分支,Git在非常短的时间内就能完成,无论版本库是1个文件还是1万个文件。

  master主分支:在版本回退中,每次提交,Git都把它们串成一条时间线,在git里,这个分支叫主分支,即master分支,HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。每次提交,master分支都会向前移动一步,这样,随着不断提交,master分支的线也越来越长。

git常用命令

实际应用

实际使用过程中本人使用pycharm git插件进行操作,操作如下:

  查看分支,目前有 master、dev 两个本地以及远程分支
 
 

 删除本地分支

删除远程分支

 

可以在github 上看到只有一个分支了

创建分支

如图,创建并切换分支

查看当前分支

每次开发前要pull 一下最新代码,防止代码提交时冲突

说明当前是最新代码

现在开始编写代码,并提交。

提交前记得也要先pull 一下。

如图,添加一行注释

本地运行没问题后 可以进行 push

push 本地 dev 到远程 dev

如图提示push 成功!

可以在 github 查看变化

接下来可以将dev merge 到 mester

  1、可以直接在github 上进行操作

查看代码变动,并 create pull request

如图,提示没有冲突可以合并分支

点击 merge pull request (合并请求) 即可完成dev 到 master的合并。

2、也可以直接通过pycharm 或是命令执行合并

通过pycharm 首先切换分支到本地master

切换前的代码

切换后的代码,没有最新代码

merge changes

因为我们Dev的 已经提交的远程dev 所以这里 选择远程dev

如图提示 merge 1 item

这里可以看到 master 分支上也有了最新的代码

最后选择 push

最后可以看到 push成功

最后去github 查看不会再有 合并分支的请求了

查看远程也能看到 最新的提交记录了

此时 就可以删除 dev 分支了,后续可以 再次新建分支进行开发任务的开发

github 分支管理的更多相关文章

  1. github分支管理

    一. 需要创建的分支 1.master 主分支 2.dev 开发分支 3.bug 修改bug分支 4.release 预发布分支 二.分支使用 1.在master上创建dev,bug,release分 ...

  2. Git远程和分支管理

    一.远程       Git是分布式版本控制系统,最重要的优点就是远程仓库托管代码.不用自己搭建一个服务器,在github上面注册一个账户就可免费获取远程仓库.      首先需要先在github上面 ...

  3. 在GitHub上管理项目

    在GitHub上管理项目 新建repository 本地目录下,在命令行里新建一个代码仓库(repository) 里面只有一个README.md 命令如下: touch README.md git ...

  4. Git 分支管理详解

    大纲: 1.前言 2.创建分支 3.切换分支 4.合并分支(快速合并) 5.删除分支 6.分支合并冲突 7.合并分支(普通合并) 8.分支管理策略 9.团队多人开发协作 10.总结 注,测试机 Cen ...

  5. Git 最佳实践:分支管理

    5月份,为统一团队git分支管理规范,刚开始准备自己写,在网上搜了下,发现不少不错的git分支管理实践.最后我为团队选择了这个git分支管理实践 A successful Git branching ...

  6. 【学习总结】Git学习-参考廖雪峰老师教程六-分支管理

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  7. [转载]理解 Git 分支管理最佳实践

    原文 理解 Git 分支管理最佳实践 Git 分支有哪些 在进行分支管理讲解之前,我们先来对分支进行一个简单的分类,并明确每一类分支的用途. 分支分类 根据生命周期区分 主分支:master,deve ...

  8. Git Flow 分支管理简述

    概述 Git 是什么 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...

  9. Git入门——远程仓库及分支管理

    关于本地版本库的操作,请见:Git入门--本地版本库操作 本篇提到的所有命令: 小结 前面提到,Git相对于传统的SVN有着很大的优势,其中之一就在于集中式系统中,版本库只能存在于中央服务器上:而在G ...

随机推荐

  1. 3. 海思Hi3519A MPP从入门到精通(三 视频输入)

    视频输入(VI)模块实现的功能:通过 MIPI Rx(含 MIPI 接口.LVDS 接口和 HISPI 接 口),SLVS-EC,BT.1120,BT.656,BT.601,DC 等接口接收视频数据. ...

  2. stl标准库 iterator_traits

    为什么标准库里要有traits? 我们先回忆一下,标准库提供的算法的一些特征: 参数一般包括iterator. 要根据iterator的种类,和iterator包装的元素的类型等信息,来决定使用最优化 ...

  3. 【bzoj4559】[JLoi2016]成绩比较(dp+拉格朗日插值)

    bzoj 题意: 有\(n\)位同学,\(m\)门课. 一位同学在第\(i\)门课上面获得的分数上限为\(u_i\). 定义同学\(A\)碾压同学\(B\)为每一课\(A\)同学的成绩都不低于\(B\ ...

  4. openpyxl的简单使用

    openpyxl的简单使用 openpyxl 操作excel的库,只能操作xlxs 文件, xlrd/xlwt这两个库能兼容xls(2003版) 安装 pip install openpyxl如果ex ...

  5. 5. git-lab 项目操作

    项目操作 一.给成员授权项目权限 之前我们是给组增加成员.  当有的项目需要给组下面的成员授权不一样的时候. 我们需要在项目里面给成员授权权限 点击管理区域 点这个项目 看下图,我们可以看到  现在这 ...

  6. (day55)七、查询优化、MTV和MCV、choices、AJAX、序列化

    目录 一.ORM查询优化 (一)only与defer (1)only (2)defer (二)select_related与prefatch_related (1)select_related (2) ...

  7. 用Python写Verilog(非HLS)

    https://blog.csdn.net/qq_32010099/article/details/81197171 前段时间玩Python的时候好奇, 既然Python这么强大, 那么能不能用Pyt ...

  8. ShuffleNet:

    ShuffleNet算法详解 论文:ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices ...

  9. MySQL学习笔记1——DDL

    DDL 1.数据库 *查看所有数据库:SHOW DATABASES;*切换(选择要操作的)数据库:USE 数据库名;*创建数据库:CREATE DATABASES [IF NOT EXISTS] my ...

  10. Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2) F. Bits And Pieces sosdp

    F. Bits And Pieces 题面 You are given an array