簡體中文 ▾
主題 ▾
最新版本 ▾ git-upload-archive 最後更新於 2.39.0
git-upload-archive 手冊中的更改
設定和配置
獲取和建立專案
基本快照
分支與合併
共享和更新專案
檢查和比較
打補丁
除錯
電子郵件
外部系統
伺服器管理
指南
管理
底層命令
- 2.39.1 → 2.50.1 無更改
-
2.39.0
2022-12-12
- 2.7.6 → 2.38.5 無更改
-
2.6.7
2017-05-05
- 2.1.4 → 2.5.6 無更改
-
2.0.5
2014-12-17
描述
由 git archive --remote 呼叫,並透過 Git 協議將生成的歸檔傳送到另一端。
此命令通常不直接由終端使用者呼叫。該協議的使用者介面在 git archive 這一側,這對程式旨在用於從遠端倉庫獲取歸檔。
安全性
為了保護已從歷史記錄中刪除但可能尚未修剪的物件的隱私,git-upload-archive
避免為無法從倉庫引用(refs)訪問到的提交和樹提供歸檔。然而,由於計算物件可達性計算成本高昂,git-upload-archive
實施了一套更嚴格但更容易檢查的規則
-
客戶端可以請求直接由引用(ref)指向的提交或樹。例如,
git
archive
--remote=origin
v1.0
。 -
客戶端可以使用
ref:path
語法請求提交或樹中的子樹。例如,git
archive
--remote=origin
v1.0:Documentation
。 -
客戶端不允許使用其他 SHA-1 表示式,即使最終結果是可達的。例如,無論是像
master^
這樣的相對提交,還是像abcd1234
這樣的字面 SHA-1 都不允許,即使結果可以從引用(refs)訪問到。
請注意,規則 3 禁止了許多沒有隱私影響的情況。這些規則在 Git 的未來版本中可能會有所更改,並且透過 git
archive
--remote
訪問的伺服器可能不會完全遵循這些規則。
如果配置選項 uploadArchive.allowUnreachable
為 true,則這些規則將被忽略,客戶端可以使用任意 SHA-1 表示式。如果您不關心不可達物件的隱私,或者您的物件資料庫已經可以透過非智慧 HTTP 方式公開訪問,那麼這會很有用。