在git-unpack-objects之后获取实际文件的内容是什么?

时间:2012-02-18 17:12:44

标签: git

我在.pack文件上做了一个git-unpack-objects。我得到的是从00到ff的很多子目录,每个子目录包含很多名称为SHA1哈希的图块,但是试图显示它们的内容会让我感觉不舒服。现在我需要从这些哈希文件中获取实际的源文件吗?

1 个答案:

答案 0 :(得分:2)

如果将.pack文件放在新.git/objects/pack/存储库的git init目录中,您应该可以git checkout -b somebranch ANYSHA1

例如:

# find a commit:
faux@reg:~/git% git rev-parse HEAD
6f5e880c68099b185e60b2492c75e506e16d8292
faux@reg:~/git% cd ..

# init:
faux@reg:~% git init bar
Initialized empty Git repository in /home/faux/bar/.git/

# add packs:
faux@reg:~% cp git/.git/objects/pack/* bar/.git/objects/pack
faux@reg:~% cd bar

# checkout:
faux@reg:~/bar% git checkout -b somebranch 6f5e880c68099b185e60b2492c75e506e16d8292
Switched to a new branch 'somebranch'

# done!
faux@reg:~/bar% ls
abspath.c
contrib
...