Git远程分支

Git远程分支

 Git的分支分为:本地分支,本地远程分支和远程分支。
 对分支的操作基本包括:创建、关联和删除。

Git分支的创建

本地分支的创建

    本地分支的创建:git branch 分支名
    本地分支的切换:git checkout 分支名
    
    本地分支的创建和切换:git chekout -b 分支名
    
    
    查看目前的分支情况  git branch -a
        $ git branch -a
        * master  //本地分支 *表示目前所在的分支
        remotes/origin/master //本地映射的远程分支
        
    
    创建develop分支并切换 git checkout -b develop
        $ git checkout -b develop
        Switched to a new branch 'develop'  //切换到了新创建的develop分支上
        
    查看目前的分支状况 git branch -a
        * develop  //成功创建并切换
          master   
          remotes/origin/master

远程分支的创建

 本地分支需要和远程分支保持着联系,才可以进行push操作,否则会异常。
 远程和本地联系通过:
  git push --set-upstream origin 远程分支名
  git push -u origin 远程分支名

    此时执行git push
        $ git push
        fatal: The current branch develop has no upstream branch. //当前的develop分支没有上游分支(上游分支就是和本地联系的远程分支)
        To push the current branch and set the remote as upstream, use //如果要是想推送当前的分支,并且和远程分支建立联系 就使用下面的命令

        git push --set-upstream origin develop

    核心就是:在远程建立一个 与 本地建立起联系的分支, 以后的本地当前分支的推送 都是 推送至远程的联系分支
    
    
    git push --set-upstream origin develop
        Total 0 (delta 0), reused 0 (delta 0)
        ...
        * [new branch]      develop -> develop  //新建立了分支 本地develop -> 远程的develop
        Branch develop set up to track remote branch develop from origin. //本地的分支 develop,建立了 追踪 和远端的develop
        
    这是git push就可以成功
        $ git push
        Everything up-to-date

    这时 本地和远程的分支是同名,都是develop。
    假如 将本地分支develop 想要和远程的 develop1 建立联系 需要如下操作。
    就需要 使用 git push的全命令了
        push的全命令:git push origin src:dest  //src是本地 dest是远程
    
    首先删除已经建立的远程 develop分支
        git push origin :develop
    
    此时git push 会出现上述的错误,因为 已经将远程的develop删除,也就不存在 了 有联系的远程分支
    
    git push origin develop:develop1
        Total 0 (delta 0), reused 0 (delta 0)
        ...
        * [new branch]      develop -> develop1 //本地develop --> develop1
    
    此时git push 仍会报错
        fatal: The upstream branch of your current branch does not match
        the name of your current branch.  To push to the upstream branch
        on the remote, use //与本地当前分支 相联系的 上游分支的 名字是不同的。需要使用下面的命令去推送

            git push origin HEAD:develop1

        To push to the branch of the same name on the remote, use //如果 想要用 同名的远程分支,就使用下面的命令

            git push origin develop

  综上:
  远程分支的创建分为两种情况:
   ①:本地和远程名字相同的情况
    使用git push --set-upstream 分支名
    使用git push -u origin 分支名
    以后的每次推送 使用 git push即可
   ②:本地和远程名字不同的情况
    使用git push origin src:dest, 以后的每次推送 都需要使用 git push origin HEAD:dest 命令

远程分支追踪

 如果只是单纯的追踪远程分支,需要使用--track和--set-upstream命令。
 比如 远程已经存在了develop分支,本地只有一个master分支。此时就需要,先创建develop分支,然后追踪远程的develop分支。

    本地分支的删除
        git branch -d 分支名
    先删除本地分支 develop
        git branch -d develop
    
    查看分支情况 git branch -a
        $ git branch -a
        * master 
          remotes/origin/develop 
          remotes/origin/master
        本地没有develop 但是远程却存在 此时需要 创建和追踪
    
    方法一:
        git checkout -b develop 创建并切换
        git push --set-upstream origin develop
        
        Branch develop set up to track remote branch develop from origin. //分支已经追踪
        Everything up-to-date

    方法二:
        git checkout --track origin/develop //创建本地develop分支,并且追踪
        
        Branch develop set up to track remote branch develop from origin. //分支已经追踪
        Switched to a new branch 'develop' //切换至develop分支

分支的删除

 本地分支删除

    git branch -d分支名
    
    需注意的是 删除的分支 不能是 正在操作的分支
    

 远程分支删除

    git push origin  :分支名
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容