大家在使用 GitHub 时,很可能会遇到需要进行代码回退的情况,有时也需要借鉴很久很久之前的一次 commit 。通常在提交 commit 时,会对应生成一个 SHA-1 值,当提交的内容变多,我们该如何使用这个值来找寻对应那次提交的内容?

网上可以搜到很多相关的做法,但基本都是在 git bash 上操作为主,主要使用的是 git show 或者 git log -p -1 等(也可以用前八位进行搜索),这里不作过多详细的介绍,案例如下:

git show 124a9a0ee1d8f1e15e833aff432fbb3b02632105
git log -p -1 124a9a0ee1d8f1e15e833aff432fbb3b02632105

我们主要介绍一种可以直接在 GitHub 或者 GitLab 网站上进行搜索的方法,而不需要先 git clone 下来。


1. 通过搜索栏进行搜索

通过搜索栏进行搜索的方式其实在 GitHub Help 中有进行讲解,这种搜索的方式称为:Search by hash.

我们直接从官方说明文档中来看看这种方法究竟怎么用:

QualifierExample
hash: HASHhash:124a9a0ee1d8f1e15e833aff432fbb3b02632105 matches commits with the hash 124a9a0ee1d8f1e15e833aff432fbb3b02632105.

其实非常简单只需要在搜索栏中搜索:hash:124a9a0ee1d8f1e15e833aff432fbb3b02632105 即可。但需要注意的是,有时候这种方法会蜜汁失效,此时我们可以采用下面这种更简单粗暴的方法。


2. 通过网址进行搜索

首先我们进入对应 GitHub 目录,然后在后面输入 /commit/SHA-1 值 ,如下所示:

当然,如果想要看对应版本的所有文件信息,而不是 commit 对比前一次提交的信息,直接将 /commit/SHA-1 值 替换成 /tree/SHA-1 值 即可:


参考网址

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐