在开发过程中一般会用到Git进行版本管理,创建查看分支并与远程仓库交互是非常常见的操作。


branch分支

是指在开发主线中分离出来的,做进一步开发而不影响到原来的主线。

Git存储的不是一系列的更改集,而是一系列快照,当你执行一次commit时,git存储一个commit对象,它包含一个指针指向你当前需要提交的内容的快照。

master分支是在git init命令运行时默认创建一个分支,并命名为master。

查看分支

git branch                    // 列出本地已经存在的分支,当前分支会用 * 标记

git branch -r                 // 查看远程仓库的分支列表

git branch -a                 // 查看所有分支列表(包含本地和远程分支)

git branch -vv                // 查看本地分支对应的远程分支

git branch -v                 // 查看一个分支的最后一次提交

git branch --merged           // 查看哪些分支已经合并到当前分支 

git branch --no-merged        // 查看所有未合并工作的分支

创建分支

git branch dev            // 创建名为dev的分支(创建分支时需要是最新的环境,创建分支但依然停留在当前分支上

删除分支

git branch -d dev            // 删除本地dev分支

git branch -D dev            // dev分支还没合并入当前分支,所以要用-D参数才能删除掉

git push origin --delete dev      // 删除远程dev分支

git push origin             // dev删除远程dev分支

重命名分支

git branch -m oldName newName     // 给分支重命名

切换分支

/* 操作文件 */

git checkout fileName          // 放弃单个文件的修改

git checkout .              // 放弃当前目录的修改

/* 操作分支 */

git checkout master           // 将分支切换到master

git branch -b master          // 如果分支存在则只切换分支,若不存在则创建并切换到master分支,repo start是对git checkout -b这个命令的封装,将所有仓库的分支都切换到master,master是分支名,

/* 查看帮助 */

git checkout --help

拉取分支

git checkout dev              // 将远程分支dev拉取下来到本地dev分支

git pull dev                // 拉取远程分支dev中内容

git checkout -b test origin/test_remote         // 将远程分支test_remote拉取下来到本地test分支

git fetch origin            // 同步远程服务器的数据到本地

合并分支

/* 合并流程 */
git checkout test         // 切换到test分支 git pull              // 从远程仓库拉取最新代码到本地test git checkout dev         // 切换到当前分支 dev git merge test          // 将test分支拉取下来的代码合并到dev /* ----------- */ git merge --abort        // 如果git merge的时候出现冲突,可以执行这个命令取消merge。 git cherry-pick commit_id   // 将一个分支的commit_id提交合并到当前分支上,并舍弃另一个分支上的其他提交。

整理自:Git创建分支和查看分支

- END -

GIT:创建、查看分支命令(git branch -vv)的更多相关文章

  1. git创建/合并分支/删除分支/将修改后的内容同步到GitHub远程仓库

    1.创建分支并切换到刚创建的分支(这里创建新的分支来修改README.md的内容然后将创建的分支与master分支合并,最后删除创建的分支) $ git checkout -b 分支名 Switche ...

  2. windows下git创建本地分支并建立对应远程分支

    在对应项目目录下打开命令提示符 git branch -a      查看所有本地和远程分支 git checkout -b [newBranch]     建立本地分支newBranch git p ...

  3. git创建本地分支以及推送本地分之至远程分支

    Git分支策略 实际开发中,应当按照以下几个基本原则进行管理: 首先,master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能再上边干活. 那在哪干活呢?干活都在dev分支上,也就是说,de ...

  4. 使用Git下载指定分支命令为

    使用Git下载指定分支命令为: git clone -b 分支名 仓库地址   例如: git clone -b dev https://github.com/xxx.git   将下载分支名为2D- ...

  5. git 创建远程分支和删除 master 分支

    . . . . . 最近需要将不同的客户的代码分开管理,所以需要为这些代码分别创建分支. 目前版本库中分支结构如下: [yuhuashi@local:Project]$ git branch -a* ...

  6. git拉取远程分支并创建本地分支和Git中从远程的分支获取最新的版本到本地

    git拉取远程分支并创建本地分支 一.查看远程分支 使用如下Git命令查看所有远程分支: git branch -r 二.拉取远程分支并创建本地分支 方法一 使用如下命令: git checkout ...

  7. git 创建本地分支与远程分支

    早上抽空整理了下git常用操作,偶尔看看加深下印象吧: 如果github上已经有master分支 和dev分支 在本地 git checkout -b dev 新建并切换到本地dev分支 git pu ...

  8. git创建新分支

    1.创建本地分支 git branch 分支名,例如:git branch 2.0.1.20120806 注:2.0.1.20120806是分支名称,可以随便定义.   2.切换本地分支 git ch ...

  9. Git创建本地分支并关联远程分支(一)

    默认,git项目只有一个分支,就是master,我们当然可以在本地创建多个分支,并推送到远程git管理平台上,或者将远程git管理平台上的其他分支拉取到自己电脑上. 一.查看本地已有的分支 进入到项目 ...

随机推荐

  1. 3、基于Python建立任意层数的深度神经网络

    一.神经网络介绍: 神经网络算法参考人的神经元原理(轴突.树突.神经核),在很多神经元基础上构建神经网络模型,每个神经元可看作一个个学习单元.这些神经元采纳一定的特征作为输入,根据自身的模型得到输出. ...

  2. C++ 打印乘法口诀

    1 //嵌套循环 乘法口诀 2 #include <iostream> 3 using namespace std; 4 int main() 5 { 6 int i ,j; 7 for ...

  3. 三年Android开发,月薪一万二,不敢跳槽,每天都很焦虑

    在我们的身边,存在一个普遍现象:很多人从事Android开发工作多年,走过的弯和坎,不计其数,经历的心酸难与外人道也.可是技术确难以提升.止步不前,薪资也只能看着别人水涨船高,自己却没有什么起色. 虽 ...

  4. k8s之数据存储-配置存储

    ConfigMap configmap是一种比较特殊的存储卷,它的主要作用是用来存储配置信息的 创建configmap.yaml,内容如下 apiVersion: v1 kind: ConfigMap ...

  5. kubernetes/k8s CNI分析-容器网络接口分析

    关联博客:kubernetes/k8s CSI分析-容器存储接口分析 kubernetes/k8s CRI分析-容器运行时接口分析 概述 kubernetes的设计初衷是支持可插拔架构,从而利于扩展k ...

  6. JVM学习笔记之class文件结构【七】

    一.概念 1.1 无符号数: 以 u1.u2.u3.u4.u8 代表 1 个字节,2 个字节.4 个字节.8 个字节的无符号数.无符号数可以描述数字,索引引用.数量值和按照 UTF-8 编码构成的字符 ...

  7. SpringBoot Spring Security 核心组件 认证流程 用户权限信息获取详细讲解

    前言 Spring Security 是一个安全框架, 可以简单地认为 Spring Security 是放在用户和 Spring 应用之间的一个安全屏障, 每一个 web 请求都先要经过 Sprin ...

  8. SQL 练习20

    查询各科成绩前三名的记录 select a.sid,a.cid,a.score from sc a left join sc b on a.cid = b.cid and a.score<b.s ...

  9. flutter中修改键盘状态

    当用户进行表格输入时,为更方便的方便用户操作,我们需要设置键盘状态方便用户点击,如当表格填写完成时,用户可以直接点击键盘下面的"完成"状态完成提交. 实现如下: TextFormF ...

  10. java线程池 面试题(精简)

    什么是线程池? 线程池是一种多线程处理形式,处理过程中将任务提交到线程池,任务的执行交由线程池来管理. 如果每个请求都创建一个线程去处理,那么服务器的资源很快就会被耗尽,使用线程池可以减少创建和销毁线 ...