設定與組態
取得與建立專案
基本快照
分支與合併
分享與更新專案
檢查與比較
修補
除錯
電子郵件
外部系統
伺服器管理
指南
- gitattributes
- 命令列介面規範
- Git 日常使用
- 常見問題 (FAQ)
- 詞彙表
- 掛鉤 (Hooks)
- gitignore
- gitmodules
- 修訂版本 (Revisions)
- 子模組
- 教學
- 工作流程
- 所有指南...
管理
底層命令 (Plumbing Commands)
- 2.39.1 → 2.55.0 無變更
-
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 端,這對程式旨在用於從遠端儲存庫取得封存檔。
安全性
為了保護已從歷史紀錄中移除但尚未被清理(pruned)的物件隱私,git-upload-archive 會避免提供無法從儲存庫參考(refs)存取的提交(commits)與樹狀物件(trees)封存檔。然而,由於計算物件的可存取性在運算上相當耗時,git-upload-archive 實作了一套更嚴格但更容易檢查的規則:
-
用戶端可以請求由參考直接指向的提交或樹狀物件。例如:
gitarchive--remote=originv1.0。 -
用戶端可以使用
ref:path語法請求提交或樹狀物件內的子樹。例如:gitarchive--remote=originv1.0:Documentation。 -
用戶端不得使用其他 SHA-1 表達式,即使最終結果是可存取的也不行。例如:即使結果可從參考中存取,也不允許使用像
master^這樣的相對提交,或是像abcd1234這樣的字面 SHA-1。
請注意,規則 3 不允許許多不涉及隱私問題的情況。這些規則在 Git 的未來版本中可能會有所更動,且透過 git archive --remote 存取的伺服器可能會也可能不會完全遵守這些規則。
如果設定選項 uploadArchive.allowUnreachable 為 true,則會忽略這些規則,且用戶端可以使用任意的 SHA-1 表達式。如果您不在意不可存取物件的隱私,或者您的物件資料庫已經透過非智慧型 HTTP (non-smart-http) 公開供存取,這會很有用。
GIT
git[1] 套件的一部分