求 git 的一个指令

2017-04-28 10:35:57 +08:00
 thomaswang

我记得好像有一个指令可以对文件加密,得到 40 位 sha1 码,类似于:git sha1 a.txt 回车

1483 次点击
所在节点    问与答
4 条回复
shalk
2017-04-28 11:06:34 +08:00
git hash-object
thomaswang
2017-04-28 11:12:19 +08:00
@shalk , 多谢了,我要给小伙伴们分享 Git 内部原理,需要这个
thomaswang
2017-04-28 16:19:53 +08:00
@shalk git hash-object 能计算出文件的 sha1 值,tree 和 commit 的 sha1 值是如何算出来的呢
SoloCompany
2017-04-29 01:59:51 +08:00
tree object 可以用 git ls-tree | git mktree 重新计算出来
但如果用 git hash-object -t tree 的话,需要二进制格式,恐怕不是这么容易构造出来

commit object 的话,似乎没有什么好方法,好像也没有命令来构造二进制数据,虽然 git show <commit> — pretty=raw --no-patch 可以看到 commit 的完整内容,但没有命令可以把这个内容重新组装成一个 commit object

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/357893

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX