swi*_*itz 1 git terminal command-line-interface
假设我有一个哈希ccf52ef35d7767c5b0f251542ab79608c50a3a56
。
如何使用git
命令行从提交哈希和文件结构中获取文件的内容。
另外,如果路径是目录而不是文件,如何获得目录列表。我不需要检查,只需要检查两个命令即可。
我知道这是命令:
git log [<options>] [<since>..<until>] [[--] <path>...]
和这里的页面。
我试过了git log ccf52ef35d7767c5b0f251542ab79608c50a3a56
,但是只是返回了泛型git log
(所有提交)。我什至不知道如何获取文件的内容,除了可能将其输送到ls
或中cat
。
编辑:好的,所以我想通了git show --pretty="format:" --name-only a3da8bb
。是仅grep出目录并从目录中整理文件的最佳方法吗?编辑2:看到答案,谢谢。仍在寻找解决方法cat
。
您可能想要:
git show --pretty="format:" --name-only <sha1 hash>
Run Code Online (Sandbox Code Playgroud)
它将显示在提交中添加/修改/删除的文件。代替--name-only
,您可以--name-status
用来显示名称和状态(已修改,已添加。)
要获取文件的内容,可以使用:
git show <hash>:file
Run Code Online (Sandbox Code Playgroud)
要么
git cat-file -p <hash>:file
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3580 次 |
最近记录: |