首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取有关SHA-1提交对象的信息?

获取有关SHA-1提交对象的信息?
EN

Stack Overflow用户
提问于 2011-09-30 20:04:29
回答 3查看 27K关注 0票数 68

我在提交日志中搜索了一个感兴趣的主题:

代码语言:javascript
复制
$ git log --pretty=oneline | grep -i ...

$SHA1 < ... commit message ... >

我现在有了一个SHA1,我想知道有关影响该SHA1的文件的信息,然后可能会将它们与其父文件一起diff。我怎么才能做到这一点呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-09-30 20:12:09

git show <SHA1>将显示提交日期、作者、父文件和从父提交更改的文件的差异。

票数 96
EN

Stack Overflow用户

发布于 2016-04-04 18:30:09

代码语言:javascript
复制
git show --no-patch --oneline <SHA1>
git show --no-patch <SHA1>

这是对没有回复框的View a specific Git commit的回答,因为它已被标记为此问题的副本。一些寻找上述问题答案的人可能会点击链接并在这里寻找答案。

这两个问题都是关于从提交的SHA1代码中获取提交信息的问题。

有时,当您通过提交的SHA1代码确定提交时,您可能希望了解有关它的所有信息:所有更改的文件、实际更改的内容等。

另一个问题要具体得多。有人在文件中有一个可疑的软件行,并使用"git SHA1“将其跟踪到特定的git代码。然后,他们只是想知道用人类的术语来说,是哪种软件变化引入了这一行。没有兴趣知道所有其他更改的文件,没有兴趣获得文件的完整差异,甚至没有兴趣获得该文件的差异。它只是简单地知道是哪一项更改引入了一行代码。

不是像这样的信息

代码语言:javascript
复制
c27feeaa9b2c6270ff559b21eaf9f1e0317676a7

我们需要像这样的信息

代码语言:javascript
复制
Humanitarian Aid Feature

代码语言:javascript
复制
Left handed Thread Fix

为此,请使用

代码语言:javascript
复制
git show --no-patch --oneline <SHA1>

其中git show --no-patch (即使用--no-patch选项)是回答eykanal问题View a specific Git commit的关键

使用

代码语言:javascript
复制
git show --no-patch <SHA1>

如果你也想要作者和日期信息。

票数 7
EN

Stack Overflow用户

发布于 2017-12-12 17:58:03

您还可以使用cat-file命令获取有关提交对象的特定信息(使用SHA1)。

例如,git cat-file -p <sha1>

示例输出:

代码语言:javascript
复制
 $ git cat-file -p xxxx
tree <sha1>
parent <sha1>
parent <sha1>
author <author> <unix timestamp>
committer <committer> <unix timestamp>

<commit message>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7610073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档