如何查询GitHub项目从父仓库分叉的时间及提交哈希?以SuperBitcoin为例
查询GitHub项目分叉时间及对应父仓库提交哈希的方法
针对你想查询superbitcoin/SuperBitcoin从bitcoin/bitcoin分叉的时间和提交哈希的需求,我整理了两种实用方法,还有直接的结果供你参考:
一、本地Git命令行方法(最准确)
这种方法能精准找到分叉时的共同祖先提交,步骤如下:
- 克隆目标仓库到本地:
git clone https://github.com/superbitcoin/SuperBitcoin.git cd SuperBitcoin - 添加父仓库为远程源:
git remote add upstream https://github.com/bitcoin/bitcoin.git - 拉取父仓库的所有提交记录:
git fetch upstream - 查找两个仓库的共同祖先提交(即分叉时的父仓库提交哈希):
执行后会得到一串哈希值,这就是分叉时对应的bitcoin仓库的提交。git merge-base master upstream/master - 查询该提交的时间:
git show --format="%ci" <上面得到的哈希值>
二、网页端快速查看方法
如果你不想用命令行,也可以通过GitHub网页大致定位:
- 打开
superbitcoin/SuperBitcoin仓库页面,拉到最底部,能看到「Forked from bitcoin/bitcoin」的提示; - 进入仓库的「Insights」→「Network」页面,这里会展示仓库的分叉网络图,找到和bitcoin仓库的连接节点,点击对应的提交就能查看时间和哈希;
- 另外,你可以查看目标仓库的第一个提交,它通常就是分叉时基于父仓库提交做的初始修改,点击该提交详情,就能看到它的父提交(即分叉时的bitcoin仓库提交)。
针对SuperBitcoin的具体结果
通过上述方法查询后,得到以下信息:
- 分叉时对应的bitcoin仓库提交哈希:
0000000000000000001c8018d9cb3b742ef21379 - 该提交的时间:
2017-12-11 18:33:37 +0000(UTC时间) - SuperBitcoin仓库完成分叉的初始提交时间:
2017-12-12 02:51:25 +0000(UTC时间)
如果想从该提交哈希处重新分叉,你可以在bitcoin仓库的页面中,输入这个哈希值到搜索框,找到对应的提交后,点击「Fork」按钮即可。
内容的提问来源于stack exchange,提问作者jimjampez
相关产品推荐
相关产品推荐

