git学习—git log 和git diff

2024-05-19 00:32
文章标签 学习 git log diff

本文主要是介绍git学习—git log 和git diff,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大概整理一下,供自查看
git log 对比两个分支差异:
http://blog.csdn.net/u011240877/article/details/52586664

git diff文档
http://web.mit.edu/~mkgray/project/silk/root/afs/sipb/project/git/git-doc/git-diff.html

git diff(没有时间参数配置)
如下命令:

--对比两个分支 branchB和branchA修改的所有的文件,branchB多提交哪些内容,反之A分支多提交的内容
git diff branchA branchB --对比两个分支 branchB和branchA 中指定test.txt的不同
git diff branchA branchB test.txt--查看两个分支中内容不相同的所有文件名称 。 >表示输出到 diff.txt文件
git diff --name-status branchA branchB  > diff.txt

git log 输出日志:

git log --after="2016-11-06 17:37:42" --before="2016-11-06 17:45:42" --name-status --abbrev-commit --left-right branchA...branchB > log.txt--after :从这个时间之后   
--before : 从这个时间之前 
--name-status :显示新增、修改、删除的文件清单。 
--abbrev-commit :仅显示 SHA-1 的前几个字符,而非所有的 40 个字符
--left-right:每个提交是在哪个分支上,左箭头 < 表示是 branchA 的,右箭头 > 表示是 branchB的
... : 并集关系,两个分支共同的修改记录

git diff –name-status branchA branchB
测试-如图:
这里写图片描述

git log –name-status –abbrev-commit –left-right branchA…branchB > log.txt
测试-不加时间的参数,输入所有的不同,如图:

这里写图片描述

详细的示例过程:

1):从主干master拉出一个develop分支
(2):在develop上进行开发,新增d1,d2,test,编辑index.html和删除文件d2
(3):从develop分支拉出一个release1 分支
(4):develop继续开发,新增d3,release1分支发现bug,在release1上修复bug,新增r1,编辑d1,删除test,暂停release1的bug修复。
(5):release1暂停修改后合并代码到develop,develop继续开发,新增d4,,编辑d3;6):在从develop上拉出release2分支,release2编辑d1,pom.xml,新增 r22,编辑r1。release2暂停;(7):develop 开发在新增r2,d1编辑pom.xml8):release2合并到develop上对比两个分支 release1和release2两个分支:不同就是在release1合并到develop之后的所有不同(5)(6)节点的不同
涉及的文件:
d1 d3 d4  r1  r22  pom.xml需打包这些文件,可以在release2分支进行。

这里写图片描述

这篇关于git学习—git log 和git diff的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/995721

相关文章

JAVA Log 日志级别和使用配置示例

《JAVALog日志级别和使用配置示例》本文介绍了Java中主流的日志框架,包括Logback和Log4j2,并详细解释了日志级别及其使用场景,同时,还提供了配置示例和使用技巧,如正确的日志记录方... 目录一、主流日志框架1. Logback (推荐)2. Log4j23. SLF4J + Logback

IDEA和GIT关于文件中LF和CRLF问题及解决

《IDEA和GIT关于文件中LF和CRLF问题及解决》文章总结:因IDEA默认使用CRLF换行符导致Shell脚本在Linux运行报错,需在编辑器和Git中统一为LF,通过调整Git的core.aut... 目录问题描述问题思考解决过程总结问题描述项目软件安装shell脚本上git仓库管理,但拉取后,上l

Git进行版本控制的实战指南

《Git进行版本控制的实战指南》Git是一种分布式版本控制系统,广泛应用于软件开发中,它可以记录和管理项目的历史修改,并支持多人协作开发,通过Git,开发者可以轻松地跟踪代码变更、合并分支、回退版本等... 目录一、Git核心概念解析二、环境搭建与配置1. 安装Git(Windows示例)2. 基础配置(必

Git打标签从本地创建到远端推送的详细流程

《Git打标签从本地创建到远端推送的详细流程》在软件开发中,Git标签(Tag)是为发布版本、标记里程碑量身定制的“快照锚点”,它能永久记录项目历史中的关键节点,然而,仅创建本地标签往往不够,如何将其... 目录一、标签的两种“形态”二、本地创建与查看1. 打附注标http://www.chinasem.cn

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.

IDEA中新建/切换Git分支的实现步骤

《IDEA中新建/切换Git分支的实现步骤》本文主要介绍了IDEA中新建/切换Git分支的实现步骤,通过菜单创建新分支并选择是否切换,创建后在Git详情或右键Checkout中切换分支,感兴趣的可以了... 前提:项目已被Git托管1、点击上方栏Git->NewBrancjsh...2、输入新的分支的

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

如何自定义一个log适配器starter

《如何自定义一个log适配器starter》:本文主要介绍如何自定义一个log适配器starter的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求Starter 项目目录结构pom.XML 配置LogInitializer实现MDCInterceptor