有趣且重要的Git知识合集(5)Merge branch ‘master‘ of
1、打印输出git分支图
git log --graph --all --decorate --oneline
--graph意思是以图形的模式显示分支,
--all意思是显示所有的commit记录,
--decorate参数用来显示一些相关的信息,如HEAD、分支名、tag名等,
--oneline就是一个commit只显示一行
2、Merge branch 'master' of
我们某些时候会见到 Merge branch 'master' of into... 的日志,如下图,会多一个绿色的箭头指向,那这是如何造成的呢?为啥会出现这种呢?
答:我们在同一个分支上进行多人协同开发时,本地分支的代码落后于远程分支是很常见的事,如果你按照正常流程,先 git pull,有冲突解决冲突,然后git add/commit/push,那么你的git操作没有问题,非常完美,git分支图也是正常显示。但是你如果先 git commit,再 git pull的话,就会产生 Merge branch 'master' of 这种多余日志,虽然不会影响啥,但是分支图多一处无用的日志就很不好, 而且 先git add再git pull也非正常流程。
2.1、那么有同学想问,我对git不太熟悉,又和同事在同一个分支上开发,那我该如何操作呢?
首先你和同事修改有同样代码,然后他讲代码提交到远程了,你需要拉取他的代码,但是因为你本地有正在开发的代码,无法git pull,那切记一定不要先git commit! 要先 git stash , 将你本地开发代码提交到本地暂存区(可以跨分支哦,这方式很好用),然后git pull,拉下别人的代码后,再 git stash pop,将你代码从暂存区退出到本地开发目录,然后就是解决冲突,接着 再是git add/commit/push啦
2.2、git pull 原理是啥?
我们在git pull代码时,实际上git 默认会帮我们做合并操作: fast-forward 模式, 意思是如果 远程 分支超前于本地分支,并且本地分支没有任何 commit 的,直接从 远程 进行 pull 操作,这种模式下,不会产生合并节点,也就是说不会产生多余的日志信息(Merge branch 'master' of ...)。
如果像之前那样,本地先 commit 后再去 pull,那么远程分支和本地分支会出现分叉,这个时候使用 pull 操作拉取时,就会进行分支合并,产生合并节点日志信息
有趣且重要的Git知识合集(5)Merge branch ‘master‘ of相关推荐
- 有趣且重要的Git知识合集(8)git commit 重新提交(—amend —no-edit)
当我们已经commit提交过一次了,然后发现还有些代码没改完,这个时候,很多童鞋都会考虑,再commit一次就行了,但是在git记录中就会出现两条commit,其实问题不大,但是如果有很多这种情况,就 ...
- 有趣且重要的Git知识合集(7)git stash报错 Too many revisions specified: ‘stash@‘ ‘MAA=‘ ‘xml‘ ‘text‘
在我们想要查看stash list中储存的代码时,就先 git stash list 然后会出现下图所示 这时候再输入 git stash show -p stash@{0} 但是,会出现这种报错 T ...
- 有趣且重要的JS知识合集(18)浏览器实现前端录音功能
1.主题描述 兼容多个浏览器下的前端录音功能,实现六大录音功能: 1.开始录音 2.暂停录音 3.继续录音 4.结束录音 5.播放录音 6.上传录音 2.示例功能 初始状态: 开始录音: 结束录音: ...
- 有趣且重要的css知识合集(6)动态控制css伪元素【var()】
在vue里,js和css的属性可以随意控制,比如:class和:style,但是我们想要动态控制伪元素的属性该怎么做呢? 比如下图,右下角小圆圈就是通过伪元素定义上去的,那我们想要自由实现伪元素的显示 ...
- 有趣且重要的css知识合集(1)纯css实现div左右拖拽效果
目前我看主流的都是用js来实现div拖拽效果,不过我个人觉得一直监听拖拽,会耗费很大的性能,毕竟监听盒子的宽高这些属性,都会触发浏览器的回流,并且我看了很多博客,他们是能用css实现div左右拖拽效果 ...
- 有趣且重要的JS知识合集(15)前端上传视频后获取视频的相关信息
通过视频文件上传后监听loadedmetadata事件来获取视频属性 getVideoInfo(file) {return new Promise(resolve => {const video ...
- 写给Android App开发人员看的Android底层知识合集(1-8)
写给Android App开发人员看的Android底层知识合集(1-8) 转自包老师:http://www.cnblogs.com/Jax/p/6864103.html 写给Android App开 ...
- git pull时产生'Merge branch 'master' of...问题
一.问题 在使用 Git 的进行代码版本控制的时候,往往会发现在 log 中出现 "Merge branch 'master' of -" 这句话,如下图所示.日志中记录的一般为开 ...
- Git提交时出现Merge branch ‘master‘ of ...之解决方法
多人协作开发项目,在上传代码时通常会先pull一下远程代码,使本地与远程同步更新,但是如果远程此时与自己代码存在冲突,在解决冲突后提交有时会出现"Merge branch 'master' ...
- 9个非常有趣的HTML5 Canvas动画特效合集
HTML5技术正在不断的发展和更新,越来越多的开发者也正在加入HTML5阵营,甚至在移动开发上HTML5的地位也是越来越重要了.HTML5中的大部分动画都是通过Canvas实现,因为Canvas就像一 ...
最新文章
- Winsock异步模式I/O模型WSAEventSelect的使用
- 【c语言】蓝桥杯算法训练 连接字符串
- python数据库-mysql
- Ubuntu下vi编辑器方向键变成字母的解决方法
- 5.1.4 IO软件层次结构
- 从系统设计到市场痛点,浅谈英国自助结账系统
- 服务器端与客户端TCP连接入门(三:多线程)
- android学习笔记之ProgressDialog的使用
- java求平均值Scanner_Scanner的一些问题
- 【Maven学习笔记(二)】Maven的安装与配置
- 网络硬盘录像机和数字硬盘录像机区别(nvr dvr ipc区别)
- 小智伴机器人使用说明_智伴机器人丨史上最全功能,玩转小智伴看这里!
- BZOJ 1006 神奇的国度(弦图的染色数)
- 搜狗服务器页面找不到了怎么办,处理搜狗浏览器提示“无法解析服务器的DNS地址”的方法...
- UE4之SetRelativeLocation 和SetRelativeRotation
- spring实现定时任务的两种方式
- 批量生成横断面_批量生动生成填充图案的边界线
- ORK进行物体检测过程中出现的报错及解决方案
- penetration testing report
- CS231n——机器学习算法——线性分类(上: 线性分类器)
热门文章
- Axure,Justinmind以及Mockplus的交互设置方式对比
- 谁在叩响野蛮人的家门?
- 计算机考研可以考到部队吗,部队文职好考么?备考压力远比考研小!
- Several ports (8005, 8080, 8009) required by demo are already in use. The server may already be runn
- Ubuntu Linux,及Python matplot,安装Times New Roman等字体,让图标签可以用Times New Roman等字体
- driver其他常用的方法
- u盘文件突然不见了怎么样才能恢复呢?
- 简单聊聊什么是Sass、Pass和Iass?
- poj 2632 Crashing Robots
- 关于JFrame添加背景图片,setbounds的小知识