[英]git config insteadOf for https://host/project/<project>/repo/<repo>
git config <url>.insteadOf <url>
對於簡單的 URL 方案(如 GitHub 或 GitLab)可以完美且輕松地工作。
在 corporate.network 我有 HTTPS URL,看起來像https://host/project/<project>/repo/<repo>
和 SSH URL 看起來像git@host/<project>/<repo>.git
.git
最后的.git
是可選的。
是否可以使用git
提供的機制從一個轉換為另一個,或者我必須編寫一個單行代碼來包裝 git-clone?
來自git help config
:
url.<base>.insteadOf 任何以此值開頭的 URL 將被重寫為以 <base>開頭。
(強調我的 -博士)
因此insteadOf
無法解析 URL、提取子字符串並將它們按不同的順序排列。 只能重寫 URL 的開頭。
我將它用於我的公司內部部署 Git 托管服務,前提是,如 phd 所建議的,我使用 URL 開頭。
URL 的末尾可能包含也可能不包含 .git 這一事實並不重要,因為我們的 Git 存儲庫托管服務器將以相同的方式解釋這兩者。
從 SSH 到 HTTPS:
git config --global url."https://host/".insteadOf git@host:
git config --global url."https://host/".insteadOf ssh://git@host/
從 HTTPS 到 SSH:
git config --global url."ssh://git@host/".insteadOf https://host/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.