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

摘要:
也就是说无从查到这些改动的具体原因了~【注】:而且每次代码修改的提交都会有commit描述,cdpackages/apps/Mms/src/com/android/mms/ui/二、gitlog--pretty然后使用下面的命令可列出文件的所有改动历史。

<转自 http://www.cnblogs.com/flyme/archive/2011/11/28/2265899.html>

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

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

一、切换到目录

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

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


二、git log --pretty

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

git log --pretty=oneline 文件名

如:

复制代码
root@ubuntu: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 card
0e04b16f1dad7dc0a36e2235f7337bc656c365c7 display for 1970-1-1
e4abf3a213197491e0855e101117b59b5dc0160d HREF#13954 receive, store, and display wap push
356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e HREF#16265_uim_show_time_error
350f9d34c35ab50bdb4b2d43fb3ff9780e6c73fa fix xxxx
715e32f97bd9d8ce4b5ba650b97ba4b137150456 Fix ANR from calling Contact.get()
fd8357ff5febab0141e1beb8dd3b26f70416b108 Fix missing From field
d130e2e6dc448fd80ecb70f0d31e3affb9888b9a fix bug 2112925: don't display zip file garbage content in MMS.
0e19f738c114f86d0d88825ee48966015fb48b6d Don't always show sent timestamp
52f854cbb75e8f9975c7e33216b828eb2f981095 Don't show Anonymous as the MMS sender
331864544ec51ba6807fc5471cc6d537b7fef198 add search capability
33a87f96f8c625aa10131a77a3968c97c4ec5a62 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/...@138607
72735c62aba8fd2a9420a0f9f83d22543e3c164f auto import from //depot/cupcake/@135843
892f2c5bf965b1431ae107b602444a93f4aad4a3 auto import from //depot/cupcake/@135843
153ae99e0a7d626a24d61475eeb133249deb448c auto import from //depot/cupcake/@132589
abd7b2d90f7491075f1daba4b4cccdfc82f8ddd1 auto import from //depot/cupcake/@137055
59d72c57ce9c319b6cd43ce2ab36b7076c9e821f auto import from //branches/cupcake/...@132276
44cea74dc55e2459262d0d765ef4a69267dd09b0 auto import from //branches/cupcake/...@131421
0f236f55349f070ac94e12cca963847173393da8 Code drop from //branches/cupcake/...@124589
8eed706474910ccb978acda03e85d3261037da6e Initial Contribution
复制代码

 三、git show


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

git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e

结果如下:

复制代码
root@ubuntu:/android_src/packages/apps/Mms/src/com/android/mms/ui# git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e
commit 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e
Author: 某某某 <某某某的邮箱>
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.java
index 0a0c4b7..55c3b27 100644
--- a/src/com/android/mms/ui/MessageItem.java
+++ b/src/com/android/mms/ui/MessageItem.java
+
+ 列出具体的改动
-
-
复制代码

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

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

免责声明:文章转载自《git查看某个文件的修改历史》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇AutoCAD .NET二次开发(二)Ubuntu之修改用户名和主机名下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

[转]CURL常用命令

From:http://www.cnblogs.com/gbyukg/p/3326825.html 常用参数 -v/--verbose 小写的v参数,用于打印更多信息,包括发送的请求信息,这在调试脚本是特别有用。 -m/--max-time <seconds> 指定处理的最大时长 -H/--header <header> 指定请求头...

C#中实现web端展示JT文件

最近在公司项目中,碰到了需要在web端展示JT格式文件的3D图形,找了好多资料,最后实现了。 主要是将*.jt文件转换成*.html文件,然后将html文件用iframe嵌入到网页中展示。 效果为: 那么如何将*.jt文件转换成*.html文件呢? 那就需要先安装西门子的一个免费的软件:JT2GO 提取码:c7kh。 装完之后,JT2GO软件本身有将JT...

windows系统中Emacs的HOME目录及配置文件的正确路径

最近爱折腾的毛病又犯了,开始折腾起Emacs,在自定义Emacs的配置文件存放位置时遇到一点问题,不过,在GNU的Emacs站点,看到这么一段话: On Windows, the .emacs file may be called _emacs for backward compatibility with DOS and FAT filesystems...

SwitchHosts—hosts管理利器

http://www.cnblogs.com/1024zy/p/5951524.html SwitchHosts是一个管理、快速切换Hosts小工具,开源软件,一键切换Hosts配置,非常实用,高效。开发Web过程成,部署有多套环境,网址域名都相同,部署在不同的服务器上,有开发环境、测试环境、预发布环境、生产环境。经常要切换Hosts来访问,测试以及验证...

在静态方法中获取properties /yml 配置文件中的信息

有时候我们需要在static方法中获取propertie配置文件中的自定义的参数信息,获取方式 application.yml custom: socket: max-content-length: 2147483647 connect-timeout-millis: 3000 proxy-port: 8088 clie...

文件加锁(基于FileChannel)

      JDK1.4引入了文件加锁机制。它允许我们同步访问某个作为共享资源的文件。不过,竞争同一文件的两个线程可能在不同的Java虚拟机上,或者一个是Java线程,另一个是操作系统中的其他的某个本地线程。文件加锁对其他的操作系统进程是可见的,因为Java的文件加锁直接映射到了本地操作系统的枷锁工具。       通过对FileChannel调用tryL...