如果U是一个 git URL(例如,一个 ssh URL),我如何在没有U的本地克隆的情况下找到U的分支或标签的 SHA1 哈希?
3 回答
您可以使用git ls-remote U
.
您可以使用:
git ls-remote U branch | cut -c1-7
其中,'branch' 指定来自该特定分支的提交哈希
如果您正在使用 ,请确保使用 Git 2.28(2020 年第三季度)git ls-remote
,因为 SHA-256 迁移工作仍在继续。
自 Git 2.19(2018 年第二季度)以来,Git 准备从 SH1 哈希到 SHA2 的转换,详见“为什么 Git 不使用更现代的 SHA? ”
参见提交3716D50,提交6161CE7,提交371C407,提交4DDD3F5,提交F7C6A3B,提交8FC7003,提交54CBBE4 ,提交97997E6 ,提交793731F , 793731F,提交586740A,提交AC093D0(fists AC093D0(fist) 505(fists) 50.202020202020202026,d9331, d96 and nd.26,d91 , d9 and dynd.cland and d9 nd.cl.and and d9 nd.cly nd and d9 nd.cly nd nd nd and d9 n . ,提交 67e9a70 ,提交 7f46e7e ,提交 059d806 ,提交 88a09a5 ,提交 1610dda,提交629DFFC,提交49C9A2F,提交D553ACE,提交4B83120,提交9DC78C2,提交B65DC2C,提交7F60501 ,提交8B85EE4 ,提交452E356 ,提交BB095D0 ,提交7C601DC,commit 7C601DC,commit 48BFF1,841141,84114141,84.141,84.1411410 ,,,,,,y 84 bfffffffffff ,,, 9a9f0d3,提交 1349ffe,提交 2c6a403,提交 bf30dbf,提交 14570dc,提交 92315e5(2020 年 5 月 25 日)和提交 b8615c3,提交 a114296(2020 年 5 月 13 日),作者:brian m。卡尔森 ( bk2204
) .
(由Junio C Hamano 合并 -- gitster
--在提交 1221085中,2020 年 7 月 6 日)
remote-curl
: 避免使用 ls-remote 截断引用签字人:brian m. 卡尔森
通常,
remote-curl
传输助手知道我们正在使用的哈希算法,因为我们在具有适当哈希算法集的存储库中。但是,当在存储库之外使用时,我们不会正确初始化哈希算法,因此请使用打印与我们检测到的算法相对应的 ref。
git ls-remote
hash_to_hex_algop
这很重要,因为在您的情况下,您将git ls-remote U
在任何本地 Git 存储库之外使用。