我是新來源代碼管理和Git。我正在使用一本書,發現很難取得很大進展。請幫我理解Git。git tag命令如何知道要標記哪個提交?
My Book - Git:每個人的版本控制。
主題 - Git標記。
步驟 -
首先,CD到本地系統(由書提供) 「卡布奇諾」 回購。
當您想用某些元數據在歷史記錄中標記某個特定點並在此後使用相同標記引用它時,標記會派上用場。我們在Git中有兩種類型的標籤 - 輕量級和註釋。
現在,讓我們在我們的卡布奇諾庫通過執行創建一個輕量級的標籤下面: git tag edge_v1.1
剛纔發生了什麼? 我們已經成功創建並將輕量/未註釋的標籤附加到特定的提交。我們還學會了列出存儲庫中可用的所有標記,並在需要時查看與任何給定標記關聯的粒度級別更改。
我不明白哪個特定的提交被標記/標記此命令。我期望一個標記命令像這個僞代碼git tag COMMID_ID=XXX edge_v1.1
。請解釋由於tag命令真正發生了什麼,以及標記如何真正起作用。
書中接着說一些其他的東西 -
我們瞭解引用與標籤名稱,而不是提交SHA1 ID提交。讓我們明白這實際上意味着什麼。
我們已經學習了git checkout作爲函數返回歷史。如您所知,此過程需要提交的SHA1 ID,您希望訪問該ID。現在我們來看看在處理標籤時如何完成 。在CLI窗口中鍵入以下命令:
git checkout 2e361b44
git checkout edge_v1.1
我們檢查出來提交在使用通常的結帳(GIT結賬SHA1 ID)方法提前製作,但回來到最新與用法提交與提交相關聯的標記名稱(edge_v1.1)。
這最後一段是什麼意思?
和HEAD是您的工作副本當前基於的提交(通常是最新提交) – Thilo
@Thilo - 謝謝。這現在很有意義。你能否也請告訴我最後一段的含義是什麼?謝謝。 –
在你的倉庫裏面,有一個保存所有Git元數據的'.git'文件夾。標籤只是位於此文件夾內的文件。 –