实战流程:

1:代码库克隆一份至本地

2:新分支操作

2.1  在需要的文件中创建并指向新的分支方便写代码  git checkout -b <name>                2.2 写完之后确认无误提交至新分支

3:切回master分支操作

3.1   指向分支master  git checkout <name>       3.2  将新分支的代码合并至master分支 git merge <name>

4:删除新分支  git branch -d <name>

5:将本地内容提交至远程仓库

一:clone远程库gitskills到本地以方便修改

$ git clone gitskills

二:新分支操作

2.1 创建并指向分支dev1(下述命令既包含了创建分支,又包含了指向分支):

$ git checkout -b dev1
Switched to a new branch 'dev1'

单独使用创建新的分支dev:

$ git branch dev

单独使用指向新分支dev:

$ git checkout dev       #指向新分支
Switched to branch 'dev' $ git branch #查看仓库中的所有分支,带有*的表示为当前指向的分支
* dev
dev1
master

2.2  修改库里的readme.txt文件内容为 learn a new skill,之后将该内容提交至新分支dev:

$ vi readme.txt           # 先编辑该文件修改为learn a new skill

$ git add readme.txt      # 提交之前首先需要跟踪此文件!还没忘记吧,嘻嘻嘻
warning: LF will be replaced by CRLF in readme.txt.
The file will have its original line endings in your working directory. $ git commit -m "learn a new skill" # 提交当前的修改至分支dev上
[dev 904860a] learn a new skill
1 file changed, 2 insertions(+)
create mode 100644 readme.txt

三:合并分支

我们已经将修改好的内容提交至分支dev上了,接下来就需要将分支dev合并至master上。想完成这个步骤首先我们得将分支切换到master之后才可以进行合并分支。

$ git checkout master                  # 先切换指向分支为master
Switched to branch 'master'
Your branch is up to date with 'origin/master'. $ git merge dev # 将分支dev合并至master
Updating dab0ed3..904860a
Fast-forward
readme.txt | 2 ++
1 file changed, 2 insertions(+)
create mode 100644 readme.txt

四:删除创建的分支dev

当分支dev上的代码已经被合并了之后,我们就可以删除这个分支啦:

$ git branch                         # 删除分支之前查看一下所有分支
dev
dev1
* master $ git branch -d dev # 删除分支dev
Deleted branch dev (was 904860a). $ git branch # 删除之后对比查看一下所有分支
dev1
* master

五. 将本地内容提交至远程仓库

$ git push origin master
Counting objects: 3, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 303 bytes | 50.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:1654218052/gitskills.git
dab0ed3..904860a master -> master

  

读后有收获可以赞赏一下哦

Git学习教程三之分支管理的更多相关文章

  1. Git 学习(六)分支管理

    Git 学习(六)分支管理 几乎每一种版本控制系统都支持分支.使用分支意味着你可以从开发主线上分离开来,然后不影响主线的同时继续工作.在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录 ...

  2. git学习(5)分支管理(续)

    git学习(5)分支管理(续) 1.解决冲突 冲突的产生 如我们在新建分支和原来master分支上对同一文件做了修改并提交,在合并分支的时候就会遇到冲突 比如我新建了分支myBranch,在这个分支上 ...

  3. GIT学习记录3(分支管理)

    学习参考地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 本编随笔只是自己对 ...

  4. Git学习(四)——分支管理

    一.创建与合并分支 1.创建分支 一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点.每次提交 ,mast ...

  5. Git学习05 --分支管理02

    1.冲突 产生冲突后,查看readme.txt   可以看到冲突内容 <<<<<<< ======= >>>>>>> ...

  6. Git学习04 --分支管理

    每次commit,Git都把它们串成一条时间线,这条时间线就是一个分支.截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支.HEAD严格来说不是指向提交,而是指向master ...

  7. git——学习笔记(三)分支管理

    一.创建.合并分支 每次提交,git都往后走一格,串成一跳时间线,head指向的是分支,分支指向提交.master是主分支,dev是另一条分支,分支就像指针一样,合并.删除分支时,修改的都是指针,工作 ...

  8. Git 学习(七)标签管理

    Git 学习(七)标签管理 发布版本时,通常会先在版本库中打一个标签,这样,就唯一确定了打标签时刻的版本.取出某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库的一个快照. ...

  9. Git 学习(三)本地仓库操作——git add & commit

    Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...

随机推荐

  1. Shell脚本快速查看网段内ip占用情况和可用ip

    思想就是整个网段ping一遍,对于ping不通的,解析其失败的字符来判定 #!/bin/bash head_add=${} address=${head_add%.*} echo address=$a ...

  2. C#实现异步阻塞TCP(SocketAsyncEventArgs,SendAsync,ReceiveAsync,AcceptAsync,ConnectAsync)

    1.类 (1)socket IO操作内存管理类 BufferManager // This class creates a single large buffer which can be divid ...

  3. python+Appium自动化:元素等待时间

    元素等待时间 为什么要设置等待时间呢?主要是因为界面加载时,为了防止元素还未出现影响后续的操作. 主要有三种方式:强制(线性)等待.隐式等待.显式等待 适用于appium和selenium 强制(线性 ...

  4. 平衡树treap 0基础详解

    刚开始学treap..同学在台上给我们讲,貌似除我之外的机房dalao们都听懂了就我发呆...(滑稽) 于是,事后的窝只能自己上网翻书研究了.... treap: treap=tree+heap,树+ ...

  5. [codeforces792C][dp]

    https://codeforc.es/contest/792/problem/C C. Divide by Three time limit per test 1 second memory lim ...

  6. 编译参数(-D)

    程序中可以使用#ifdef来控制输出信息 #include<stdio.h> #define DEBUG int main() { ; ; int sum = a + b; #ifdef ...

  7. Java线程之join

    简述 Thread类的join方法用来使main线程进入阻塞状态,进而等待调用join方法的线程执行,join有三个重载方法: public final void join() 使主线程进入阻塞状态, ...

  8. break语句与continue语句

    break:终止该层循环: continue:跳过该层循环 注: ①:若这两个语句离开应用范围,存在是没有意义的. ②:这个两个语句后面都不能有语句,因为执行不到. ③:continue语句是跳过本次 ...

  9. OSX 改变PHP安装路径环境变量

    当使用XAMPP来学习Laravel的时候,用composer安装laravel总是报错,说mcrypt is required ,但是当我在终端里打印 which php 显示的是usr/bin/p ...

  10. JS高级_数据类型

    1.分类: a.基本(值)类型: * String :任意字符串 * Number :任意数字 * boolean : true/false * undefined :undefined * null ...