簡體中文 ▾ 主題 ▾ 最新版本 ▾ git-symbolic-ref 最後更新於 2.48.0

名稱

git-symbolic-ref - 讀取、修改和刪除符號引用

概要

git symbolic-ref [-m <reason>] <name> <ref>
git symbolic-ref [-q] [--short] [--no-recurse] <name>
git symbolic-ref --delete [-q] <name>

描述

給定一個引數,它會讀取給定的符號引用指向的分支頭,並輸出其相對於 .git/ 目錄的路徑。通常,您會給出 HEAD 作為 <name> 引數,以檢視您的工作樹位於哪個分支上。

給定兩個引數,建立一個或更新一個符號引用 <name>,使其指向給定的分支 <ref>

給定 --delete 和一個附加引數,將刪除給定的符號引用。

符號引用是一個常規檔案,它儲存一個以 ref: refs/ 開頭的字串。例如,您的 .git/HEAD 是一個常規檔案,其內容是 ref: refs/heads/master

選項

-d
--delete

刪除符號引用 <name>。

-q
--quiet

如果 <name> 不是符號引用而是已分離的 HEAD,則不發出錯誤訊息;而是靜默地以非零狀態退出。

--short

在顯示 <name> 作為符號引用的值時,嘗試縮短該值,例如從 refs/heads/mastermaster

--recurse
--no-recurse

在顯示 <name> 作為符號引用的值時,如果 <name> 指向另一個符號引用,則會跟蹤這樣的符號引用鏈,直到結果不再指向符號引用(--recurse,這是預設行為)。--no-recurse 在只解引用一個級別的符號引用後停止。

-m

使用 <reason> 更新 <name> 的引用日誌。這僅在建立或更新符號引用時有效。

注意事項

過去,.git/HEAD 是一個指向 refs/heads/master 的符號連結。當我們想切換到另一個分支時,我們會執行 ln -sf refs/heads/newbranch .git/HEAD,當我們想知道我們所在的當前分支時,我們會執行 readlink .git/HEAD。但是符號連結並非完全可移植,因此現在已棄用,並且預設使用符號引用(如上所述)。

git symbolic-ref 將在正確列印符號引用內容時以狀態 0 退出,如果請求的名稱不是符號引用,則以狀態 1 退出,或者在發生其他錯誤時以 128 退出。

另請參閱

GIT

Git[1] 套件的一部分