Git常用场景使用之分支操作

    1. 拉取推送分支:

​    git branch 分支名 : 创建分支
​    git checkout 分支名 : 切换分支
​    git checkout –b 分支名 : 创建并切换到新分支
​    本地拉取分支后推送到远程:
​        git push <远程主机名> <本地分支名>:<远程分支名>
        【注意】直接git push 会将当前本地分支推送到对应远端同名分支,如果远端没有同名分支则会新建同名分支
    ​   【举例】git push 和git push origin branchTest是等效的,都是将本地branchTest分支推送到远端

2. 分支切换:

举例的切换都是从branchTest切master分支

【场景1】分支切换后提示: Your local changes to the following files would be overwritten by checkout

【原因】如同push出现冲突问题一样,该切换问题是因为当前branchTest修改代码后,和master代码冲突
                     比如,master的File1未666666、777777两行;branchTest修改后把777777删掉了,切换的时候就会出现该问题;
                     如果branchTest修改时,不对master的代码做改动,即单纯的添加888888,则不会出现该问题。
       【解决1】Force Checkout 会保留原汁原味的master代码,分支修改的代码不会出现再master
                      Smart Checkout选择让你手动解决冲突,可参考:链接的第4点
                      Don't Checkout 就是让你放弃切换分支
       【解决2】Don't Checkout放弃切换,然后commit一下,再切换,就不会有如上问题
                      但这样会导致本地存在多个commit,到时还得合并多个本地commit

3. 在错误的分支修改了代码:

【场景】在branchTest修改完代码后,发现分支错了,应该是要在master是修改的
       【解决1】未commit情况下,切换master分支,如上解决冲突;
                       commit了的话,可以reset后再切换;当然如果改动不大,可以切换后重新修改吧,
       【解决2】如果能确定push前远端两个分支的代码是一样的, 那么可以git push origin branchTest:master将branchTest提交的代码推送到远端commit分支
       【解决3】 如果push前远端两个分支的代码不一样,会push rejected
             3-3-a. pull远端master代码到当前分支,会提示冲突,手动解决冲突

3-3-b. 代码重新commit
               手动解决冲突后,可以看见log中,之前提交的commit已经断开了,所以需要重新提交commit

重新commit后,会自动合并回来,这样就可以git push origin branchTest:master

【建议】修改代码前明确分支,提交代码前先拉取代码,有冲突则解决冲突。

总结

到此这篇关于Git常用场景使用-分支操作的文章就介绍到这了,更多相关Git常用场景使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • git恢复删除的分支及内容的方法

    git 删除分支 git branch -D 分支名 git查看分支 git branch -a git 删除远程分支 git push origin :分支名 这里注意:git分支提交并且push了,但是把分支删掉了,则分支上提交的东西也一并删掉了 正确顺序是: git commit ==>git checkout master ==>git merge 分支名 ==> git push解析:git切换到master分支上, 把分支上的东西合并过来, git push 进行推送, 这时

  • 浅谈Git分支管理策略

    如果你严肃对待编程,就必定会使用"版本管理系统"(Version Control System). 眼下最流行的"版本管理系统",非Git莫属. 相比同类软件,Git有很多优点.其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便.有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"快照")的指针,因此非常快捷易用. 但是,太方便了也会产生副作用.如果你不加注意,很可能

  • Git 创建分支提交远程分支详解

    Git 创建分支提交远程分支详解 1.创建本地分支 git branch 分支名,例如:git branch 2.0.1.20120806 注:2.0.1.20120806是分支名称,可以随便定义. 2.切换本地分支 git checkout 分支名,例如从master切换到分支:git checkout 2.0.1.20120806 3.远程分支就是本地分支push到服务器上.比如master就是一个最典型的远程分支(默认). git push origin 2.0.1.20120806 4.

  • Git 详细介绍查看、删除、重命名远程分支和tag

    Git 详细介绍查看.删除.重命名远程分支和tag 1. 查看远程 分支加上-a参数可以查看远程分支,远程分支会用红色表示出来: xiaosi@Qunar:~/code/qtown-score$ git branch -a FRESH-1606_qscore-20160503 * dev master remotes/origin/20151225-qtown-score-FRESH-1236 remotes/origin/2016-2qtscore remotes/origin/FRESH-1

  • 在 Shell 提示符中显示 Git 分支名称的方法

    Git 的好处之一就是把代码的分支管理变成了一件极其便捷的事情,分支只保留差异,不用复制任何文件,不用连接网络,快速创建,用完即删.Git 分支与项目的复杂程度无关,不管你的项目多么复杂,创建 Git 分支永远都是瞬间的事情.同时,因为保留了父类分支的信息,所以分支的合并也变得异常简单. 当在一个项目中频繁使用多个分支时,可以使用 git status 命令查询自己现在正工作在哪个分支下面,不过难免有脑子发昏的时候,忘记自己在哪个分支下面,因而发生误操作之类的杯具. 那么把分支显示在 Shell

  • git分支的创建、切换、合并及删除操作小结

    一.查看现存分支 查看现存分支 : git branch命令; git branch 从结果可以看出, 现在只有一个分支master; 二.创建分支 创建分支 : git branch 分之名称, 就可以创建一个分支, 创建完分支以后可以查看分支, 当前使用的分支会显示成为绿色, 前面带有 "*" , 如果不是当前使用的分支, 显示的是白色, 并且没有 "*" 前缀; git branch branch1 三.切换分支 切换分支 : git checkout 分支名

  • Git常用场景使用之分支操作

        1. 拉取推送分支: ​    git branch 分支名 : 创建分支 ​    git checkout 分支名 : 切换分支 ​    git checkout –b 分支名 : 创建并切换到新分支 ​    本地拉取分支后推送到远程: ​        git push <远程主机名> <本地分支名>:<远程分支名>         [注意]直接git push 会将当前本地分支推送到对应远端同名分支,如果远端没有同名分支则会新建同名分支     ​ 

  • Git常用场景使用方法

      1. 本地存在多个commit: [场景]代码和远程仓库一致,本地修改后,存在多次本地commit,直接push最新的提交,push成功,但本地多次commit记录也会记录到远程仓库中 [举例]第一次提交:添加File1文件,文件内容666666               第二次提交: 添加File2文件,文件内容888888,修改File1内容 2. 远程仓库代码回退: 先本地版本回退:git reset commitid     本地回退版本强推远程仓库:git push -f 3.

  • Git基础学习之分支操作的示例详解

    目录 1.新建一个分支并且使分支指向指定的提交对象 2.思考 3.项目分叉历史的形成 4.分支的总结 1.新建一个分支并且使分支指向指定的提交对象 使用命令:git branch branchname commitHash. 我们现在本地库中只有一个 master 分支,并且在 master 分支有三个提交历史. 需求:创建一个 testing 分支,并且testing 分支指向 master 分支第二个版本. # 1.查看提交历史记录 L@DESKTOP-T2AI2SU MINGW64 /j/

  • Git 常用命令整理

    前言 这里就不介绍 git 了,表一看到命令行就怕怕,常用的命令也就这些,基本满足 99% 以上的项目需求,非常实用. 正文 一.常用 git 命令 1.1 git clone <url> [<directory>] 从远程库 clone 代码到本地,directory 用于指定一个新目录名 1.2 git status 检查本地状态,可以查看当前所在分支.新增或被修改的文件 1.3 git checkout <file> 还原某文件所作的修改,也可以 "gi

  • 日常收集整理的Git常用命令

    Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. 查看.添加.提交.删除.找回,重置修改文件 git help <command> # 显示command的help git show # 显示某次提交的内容 git show $id git co -- <file> # 抛弃工作区修改 git co . # 抛弃工作区修改 git add <file> # 将工作文件修改提交到本地暂存区 git add

  • Git 常用命令速查表(图文+表格)

    一. Git 常用命令速查 git branch 查看本地所有分支 git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支 git branch -r 查看远程所有分支 git commit -am "init" 提交并且加注释 git remote add origin git@192.168.1.119:ndshow git push origin master 将文件给推到服务器上 git remote show origin

  • linux系统安装git及git常用命令

    1 安装GIT 复制代码 代码如下: $  sudo aptitude install git$  sudo aptitude install git-doc git-svn git-email git-gui gitk git软件包包含了大部分Git命令,是必装的软件包,第二行命令也是Git软件包,但是是单独发布的,可以选择安装. 2 下载远程项目的GIT库到本地[code]$  git clone git://远程Git库地址  filename[code] filename 是你本地的文件

  • Python项目管理Git常用命令详图讲解

    目录 1 Git简介 1.1 Git管理源代码特点 1.2 Git操作流程图解 2 工作区暂存区和仓库区 工作区 暂存区 仓库区 3 Git单人本地仓库操作 1.安装git 2.查看git安装结果 3.创建项目 4.创建本地仓库 5.配置个人信息 6.新建py文件 7.查看文件状态 8.将工作区文件添加到暂存区 9.将暂存区文件提交到仓库区 10.接下来就可以在login.py文件中编辑代码 11.查看历史版本 12.回退版本 13.撤销修改 1 Git简介 Git 是目前世界上最先进的分布式版

  • Git 常用命令清单(整理且详细)

    git工作区,暂存区,版本库之间的关系: 我们建立的项目文件夹就是工作区,在初始化git(git init)版本库之后会生成一个 .git文件,可以将该文件理解成git的版本库repository,.git文件里面还有很多文件其中有一个index文件就是缓存区也叫stage,git还自动生成一个分支master,及指向该分支的指针head. (.命名开头的文件是不可见文件,如果想要显示文件,需要设置:打开计算机->组织->文件夹和搜索选项->查看->高级设置->显示隐藏的文件

  • 详解async/await 异步应用的常用场景

    前言 async/await 语法用看起来像写同步代码的方式来优雅地处理异步操作,但是我们也要明白一点,异步操作本来带有复杂性,像写同步代码的方式并不能降低本质上的复杂性,所以在处理上我们要更加谨慎, 稍有不慎就可能写出不是预期执行的代码,从而影响执行效率.下面将简单地描述一下一些日常常用场景,加深对 async/await 认识 最普遍的异步操作就是请求,我们也可以用 setTimeOut 来简单模拟异步请求. 场景1. 一个请求接着一个请求 相信这个场景是最常遇到,后一个请求依赖前一个请求,

随机推荐