【Linux/Ubuntu学习 11】git查看某个文件的修改历史

有时候在比对代码时,看到某些改动,但不清楚这个改动的作者和原因,也不知道对应的BUG号,也就是说无从查到这些改动的具体原因了~

【注】:某个文件的改动是有限次的,而且每次代码修改的提交都会有commit描述,我们可以从这里进行入手;

一、切换到目录

首先切换到要查看的文件所在的目录:

cd packages/apps/Mms/src/com/android/mms/ui/

二、git log --pretty

然后使用下面的命令可列出文件的所有改动历史,注意,这里着眼于具体的一个文件,而不是git库,如果是库,那改动可多了去了~

git log --pretty=oneline 文件名

如:

[email protected]:android_src/packages/apps/Mms/src/com/android/mms/ui# git log --pretty=oneline MessageItem.java 27209385caf678abe878375a470f4edd67a2d806 fix to process force close when empty address contained in card0e04b16f1dad7dc0a36e2235f7337bc656c365c7 display for 1970-1-1e4abf3a213197491e0855e101117b59b5dc0160d HREF#13954 receive, store, and display wap push356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e HREF#16265_uim_show_time_error350f9d34c35ab50bdb4b2d43fb3ff9780e6c73fa fix xxxx715e32f97bd9d8ce4b5ba650b97ba4b137150456 Fix ANR from calling Contact.get()fd8357ff5febab0141e1beb8dd3b26f70416b108 Fix missing From fieldd130e2e6dc448fd80ecb70f0d31e3affb9888b9a fix bug 2112925: don‘t display zip file garbage content in MMS.0e19f738c114f86d0d88825ee48966015fb48b6d Don‘t always show sent timestamp52f854cbb75e8f9975c7e33216b828eb2f981095 Don‘t show Anonymous as the MMS sender331864544ec51ba6807fc5471cc6d537b7fef198 add search capability33a87f96f8c625aa10131a77a3968c97c4ec5a62 Remove all references to ContactInfoCache except those in Contact.70c73e05a792832aa28da751cdaf3fa83a7b8113 Begin moving all conversation data behind a data model with a cache.48da875f1beea835c6771977e5bd8a9aa3d4bc10 Begin adding UI unit tests to the Mms app.66dde9460badebf8e740275cabde9cca256006eb Stop requiring a Context to be passed in to ContactInfoCache.591d17e9a51bb9f829d6860dc7aa0bad25062cd5 auto import from //branches/cupcake_rel/[email protected]72735c62aba8fd2a9420a0f9f83d22543e3c164f auto import from //depot/cupcake/@135843892f2c5bf965b1431ae107b602444a93f4aad4a3 auto import from //depot/cupcake/@135843153ae99e0a7d626a24d61475eeb133249deb448c auto import from //depot/cupcake/@132589abd7b2d90f7491075f1daba4b4cccdfc82f8ddd1 auto import from //depot/cupcake/@13705559d72c57ce9c319b6cd43ce2ab36b7076c9e821f auto import from //branches/cupcake/[email protected]44cea74dc55e2459262d0d765ef4a69267dd09b0 auto import from //branches/cupcake/[email protected]0f236f55349f070ac94e12cca963847173393da8 Code drop from //branches/cupcake/[email protected]8eed706474910ccb978acda03e85d3261037da6e Initial Contribution

 三、git show

如上所示,打印出来的就是针对文件MessageItem.java的所有的改动历史,每一行最前面的那一长串数字就是每次提交形成的哈希值,接下来使用git show即可显示具体的某次的改动的修改~

git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e

结果如下:

[email protected]:/android_src/packages/apps/Mms/src/com/android/mms/ui# git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87ecommit 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87eAuthor: 某某某 <某某某的邮箱>Date:   Thu Jan 6 01:50:31 2011 +0800

    修改的描述(是该代码commit时所填)

    Signed-off-by: 某某某 <某某某的邮箱>

diff --git a/src/com/android/mms/ui/MessageItem.java b/src/com/android/mms/ui/MessageItem.javaindex 0a0c4b7..55c3b27 100644--- a/src/com/android/mms/ui/MessageItem.java+++ b/src/com/android/mms/ui/MessageItem.java++ 列出具体的改动--

这样就可以知道是谁做了修改,以及具体的修改代码~

那接下来不管是直接去找他交流还是研究代码,都有依据了~

时间: 2024-10-12 12:37:26

【Linux/Ubuntu学习 11】git查看某个文件的修改历史的相关文章

git查看某个文件的修改历史

<转自 http://www.cnblogs.com/flyme/archive/2011/11/28/2265899.html> 有时候在比对代码时,看到某些改动,但不清楚这个改动的作者和原因,也不知道对应的BUG号,也就是说无从查到这些改动的具体原因了- [注]:某个文件的改动是有限次的,而且每次代码修改的提交都会有commit描述,我们可以从这里进行入手: 一.切换到目录 首先切换到要查看的文件所在的目录: cd packages/apps/Mms/src/com/android/mms

git查看某个文件的修改历史及具体修改内容

有时候在比对代码时,看到某些改动,但不清楚这个改动的作者和原因,也不知道对应的BUG号,也就是说无从查到这些改动的具体原因了- [注]:某个文件的改动是有限次的,而且每次代码修改的提交都会有commit描述,我们可以从这里进行入手: 一.切换到目录 首先切换到要查看的文件所在的目录: cd packages/apps/Mms/src/com/android/mms/ui/ 二.git log --pretty 然后使用下面的命令可列出文件的所有改动历史,注意,这里着眼于具体的一个文件,而不是gi

git 查看某个文件的修改历史

1. git log -p filename 查看文件的每一个详细的历史修改,如果没有-p选项,只显示提交记录,不显示文件内容修改,git log -p -3 filename 显示最近的3次提交. 2. git log --pretty=oneline filename 每一行显示一个提交,先显示哈希码,再显示提交说明. 3. git blame filename 查看文件的每一行是哪个提交最后修改的. http://git-scm.com/book/zh/ch2-3.html

【Linux/Ubuntu学习 14】Linux下查看文件和文件夹大小

当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择. df可以查看一级文件夹大小.使用比例.档案系统及其挂入点,但对文件却无能为力.    du可以查看文件及文件夹的大小. 两者配合使用,非常有效.比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结. 下面分别简要介绍 df命令可以显示目前所有文件系统的可用空间及使用情形,请看下列这个例子: 以下是代码片段: [[email protected] ~]$ df -hFilesystem

git查看某个文件修改历史

[git查看某个文件修改历史] 1.使用git命令 git whatchanged charge.lua 显示某个文件的每个版本提交信息:提交日期,提交人员,版本号,提交备注(没有修改细节) git show 7aee80cd2afe3202143f379ec671917bc86f9771 显示某个版本的修改详情 2.visual studio code可以加载git history插件. Press F1 and select/type "Git: View History (git log)

Linux 程序设计学习笔记----动手编写makefile文件

Befroe Beginning. 之前定了暑假的plan ,关于Linux的书籍现在在看的是ALP和Linux高级程序设计(杨宗德)第三版.在计划中的是Linux高级环境编程. 现在开始关于Linux程序设计的第一篇学习笔记. 本来打算把名字写成教程,不过觉得自己完全是新手在自学,还是写学习笔记比较负责和适合. 希望可以一起学习进步. 引入 首先我们假设这样一个场景.我们有一个程序包含了三个文件,分别是源码文件main_plus,c和function_plus.c以及头文件mydefine_p

11、自学——Linux的学习进度与任务【文件系统文件权限】

文件系统文件权限 文件系统文件权限: 三类用户:  属主:owner, u  属组:group, g  其它:other, o  所有:All,a 权限: r: readable,可读 w: writable, 可写 x:excutable, 可执行 权限管理: 文件:  r:可以使用内容查看类的命令来显示其相关内容  w:可以使用编辑器修改其内容 x:可以将其发起一个进程 目录: r:可以使用ls命令查看目录内容的文件信息   w:可以创建.删除文件   x:可以使用ls -l 命令查看目录内

Git学习版本回退和管理文件的修改及删除操作

版本回退 前面我们成功的提交了一次mygit.txt,下面咱对它进行修改,内容如下: Hello Git Git is so easy. 然后用git status来跟踪该文件的状态: 可以看到hellogit.txt已经被修改过了,到底这次修改的内容与上次的内容有什么不同的,咱们可以使用git diff查看: 当然你也可以查看上次提交的信息,使用git log: 通过前面一章我们知道,该文件还处于工作区,因此我们又可以使用add.commit操作了: 这里笔者偷了个懒,直接用-m表示提交的信息

linux基础学习-第十天(文件查找和压缩)

2016-08-12 授课内容: shell的流程控制 文件查找和压缩 shell的流程控制: 过程式编程语言: 顺序执行 选择执行 循环执行(未讲) 顺序执行: if语句: 单分支 if 判断条件; then 条件为真的分支代码 fi 双分支 if 判断条件; then 条件为真的分支代码 else 条件为假的分支代码 fi 多分支 if CONDITION1; then if-true elifCONDITION2; then if-ture elifCONDITION3; then if-