簡體   English   中英

從git commit hash獲取文件或文件夾

[英]Get File or Folder from git commit hash

所以說我有一個哈希值ccf52ef35d7767c5b0f251542ab79608c50a3a56

如何使用git命令行從提交哈希和文件結構中獲取文件的內容。

另外,如果路徑是目錄而不是文件,如何獲得目錄列表。 我不需要檢查,只需要檢查兩個命令即可。

我知道這是命令: git log [<options>] [<since>..<until>] [[--] <path>...]這是頁面

我嘗試了git log ccf52ef35d7767c5b0f251542ab79608c50a3a56 ,但這只是返回了通用git log (所有提交)。 我什至不知道如何獲取文件的內容,除了可能將其輸送到lscat

編輯:好的,所以我弄清楚了git show --pretty="format:" --name-only a3da8bb 是僅grep出目錄並從目錄中整理文件的最佳方法嗎? 編輯2:看到答案,謝謝。 仍然希望找出如何cat的文件。

您可能想要:

git show --pretty="format:" --name-only <sha1 hash>

它將顯示在提交中添加/修改/刪除的文件。 可以使用--name-status代替--name-only來顯示名稱和狀態(已修改,已添加。)

要獲取文件的內容,可以使用:

git show <hash>:file

要么

git cat-file -p <hash>:file

我想到了。 實際上很簡單。

git show hash:path/to/file

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM