Git详细教程(五):查看分支、创建分支、合并分支

Git详细教程(五):查看分支、创建分支、合并分支一、查看分支查看的git命令如下:gitbranch:列出本地已经存在的分支,并且当前分支会用*标记gitbranch-r:查看远程版本库的分支列表gitbranch-a:查看所有分支列表(包括本地和远程,remotes/开头的表示远程分支)gitbranch-v查看一个分支的最后一次提交gitbranch–merged查看哪些分支已经合并到当前分支gitbranch–no-merged查看所有未合并工作的分支1、查看远程分支gitbr.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、查看分支

查看的git命令如下:

git branch 列出本地已经存在的分支,并且当前分支会用*标记
git branch -r 查看远程版本库的分支列表
git branch -a 查看所有分支列表(包括本地和远程,remotes/开头的表示远程分支)
git branch -v 查看一个分支的最后一次提交
git branch --merged  查看哪些分支已经合并到当前分支
git branch --no-merged 查看所有未合并工作的分支

1、查看远程分支

git branch -r

2、查看本地分支

 git branch

Git详细教程(五):查看分支、创建分支、合并分支

二、创建和切换分支

1、创建新分支

git branch 新分支名称

2、切换分支

git checkout 分支名称

 3、创建分支的同时,切换到该分支上

git checkout -b 新分支名称

三、从远程仓库pull(拉取)代码到本地分支

1、指定远程分支,和本地分支

$ git pull origin 远程分支名称:本地分支名称

特别注意的一点:origin是远程仓库连接默认的对象名称,有些人可能在Gui上自定义过远程仓库连接的名称,可以在Gui上查看真正的名称,如下:

Git详细教程(五):查看分支、创建分支、合并分支

2、如果不写本地分支名称,则默认和远程分支同名 ,命令如下:

$ git pull origin 远程分支名称

四、将新分支推送到远程仓库

方法1:使用git命令

git push origin 分支名称

假设我本地创建了一个名为dev的分支,远程仓库还没有这个分支,推送的命令是: 

git push --set-upstream origin dev

分析:

git分支与远程主机存在对应分支,可能是单个可能是多个。 

simple方式:如果当前分支只有一个追踪分支,那么git push origin到主机时,可以省略主机名。 

matching方式:如果当前分支与多个主机存在追踪关系,那么git push –set-upstream origin master(省略形式为:git push -u origin master)将本地的master分支推送到origin主机(–set-upstream选项会指定一个默认主机),同时指定该主机为默认主机,后面使用可以不加任何参数使用git push。

注意:

Git 2.0版本之前,默认采用matching方法,现在改为默认采用simple方式。

 方法2:直接在Gui面板上使用Push功能

五、删除分支

1、删除本地分支(不能删除当前所在的分支,如果要删除,必须先切换到其他分支上)

git branch -d 分支名称

如果删除时报错:error: The branch ‘分支名称’ is not fully merged. (意思是:分支未完全合并)。解决方法是使用 -D 强制删除,代码如下:

git branch -D 分支名称

2、删除远程分支

git push origin :分支名称

注意:分支名称前有个冒号,分支名前的冒号代表删除

六、合并分支

1、假如我们现在位于分支dev上,刚开发完自己负责的功能,执行了下列命令:

git  add .
git  commit -m '某某功能已完成,提交到[分支名称]分支'
git  push -u origin 分支名称

2、首先切换到master分支上

git checkout master

3、如果是多人开发的话,需要把远程master分支上的代码pull下来

git pull origin master

4、然后把dev分支的代码合并到master上

git merge 分支名称

 如果git merge的时候出现冲突,可以执行下面的命令取消merge:

git merge --abort:

5、然后查看状态

git status

6、最后一步,Push推送到远程仓库

git push origin master

知识点补充: 

什么是分支?

 1.Git 处理分支的方式可谓是难以置信的轻量,创建新分支这一操作几乎能在瞬间完成,并且在不同分支之间的切换操作也是一样便捷。 与许多其它版本控制系统不同,Git 鼓励在工作流程中频繁地使用分支与合并,哪怕一天之内进行许多次。 理解和精通这一特性,你便会意识到 Git 是如此的强大而又独特,并且从此真正改变你的开发方式。

2.Git保存的不是文件的变化或者差异,而是一系列不同时刻的快照 。在进行提交操作时,Git 会保存一个提交对象(commit object)。 该提交对象会包含一个指向暂存内容快照的指针,还包含了作者的姓名和邮箱,提交时输入的信息以及指向它的父对象的指针。 首次提交产生的提交对象没有父对象,普通提交操作产生的提交对象有一个父对象, 而由多个分支合并产生的提交对象有多个父对象。

3.分支在实际开发中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样既安全,又不影响别人工作。

什么是派生?

派生的意思就是分支支流,gitblit上的派生,实际上就是git的分支,主支是master

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/171977.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python生兔子问题(递归算法)_用python函数写斐波那契数列

    python生兔子问题(递归算法)_用python函数写斐波那契数列兔子产子1.问题描述有一对兔子,从出生后的第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子,假设所有的兔子都不死,问30个月内每个月的兔子总对数为多少?2.问题分析兔子产子

    2022年7月31日
    5
  • keil5使用教程

    keil5使用教程简单介绍keil5得使用教程。

    2022年5月28日
    56
  • java maven 配置环境变量_maven 环境变量的配置详解

    java maven 配置环境变量_maven 环境变量的配置详解我的电脑是win10_64位的。一、安装,我使用的是免安装版的,直接解压缩就可以使用。二、配置环境变量。1.打开环境变量配置。右键计算机→属性→高级系统设置→高级→环境变量,在系统变量中配置。2.配置MAVEN_HOME。在系统变量中新建,变量名MAVEN_HOME,变量值,maven文件夹路径,我的路径是F:\Wab\资料\maven\资料\apache-maven-3.2.3,最好不要有中…

    2022年7月24日
    28
  • 完全卸载mysql(亲测有效!!!)「建议收藏」

    完全卸载mysql(亲测有效!!!)「建议收藏」1.停止mysql服务。  “运行”——>“cmd”——>输入“netstopmysql;”    看链接:  https://blog.csdn.net/Ludwig_/article/details/526345872.将控制面板中的mysql正常卸载  控制面板——》“程序”,找到并卸载!3.找到安装路径,将所有关于mysql的文…

    2022年9月30日
    3
  • SMO算法最通俗易懂的解释

    SMO算法最通俗易懂的解释我的机器学习教程「美团」算法工程师带你入门机器学习已经开始更新了,欢迎大家订阅~任何关于算法、编程、AI行业知识或博客内容的问题,可以随时扫码关注公众号「图灵的猫」,加入”学习小组“,沙雕博主在线答疑~此外,公众号内还有更多AI、算法、编程和大数据知识分享,以及免费的SSR节点和学习资料。其他平台(知乎/B站)也是同名「图灵的猫」,不要迷路哦~SVM通常用对偶问题来求解,这…

    2022年6月30日
    31
  • 如何查看webpack版本_webpack查询有没有安装

    如何查看webpack版本_webpack查询有没有安装https://blog.csdn.net/weixin_38617311/article/details/868222281,npminfowebpack2,webpack-v如果没有出现,npminstall–globalwebpack-cli,因为注意:webpack4x以上,webpack将命令相关的内容都放到了webpack-cli,所以还需要安装webp…

    2022年8月10日
    21

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号