簡體   English   中英

使用git返回一些提交時的說明

[英]Clarifications when using git to go back a few commits

誰能為我澄清一些事情。 如果我使用

git checkout HASH
  1. 運行git branch show (no branch) 這是什么意思?
  2. 如果我編輯文件,則提交。 它會創建一個新分支還是會簡單地更新整個分支,所以當我返回到當前提交時,文件也會被更新嗎?
  3. 與#2相關,目的是檢出先前的提交,以便您可以從中做出分支或進行其他操作? 我在猜測更多,但由於我的項目不是那么復雜,所以我看不到它。
  1. 這意味着您有一個分離的HEAD ref指向您檢出的提交。 這意味着所有繼續進行的提交都不會與分支關聯,並且只有在將HEAD從分離樹上移開后,提交SHA才能對其進行訪問。

  2. 沒有創建或更新分支。 您將創建一個從簽出的提交開始的提交樹,但是它不屬於任何分支,直到您告訴git將此樹作為分支的一部分。

  3. 它旨在對您可能不希望成為存儲庫中任何分支的一部分的提交進行操作。 這可能是一次性工作。 如果願意,您總是可以從上一次提交中創建一個新分支。

git-checkout手冊頁很好地解釋了這些問題,並闡明了您對以各種方式使用checkout的理解。

  1. 這意味着您處於DEACHED HEAD模式
  2. 不,您的提交沒有任何分支引用:任何分支的HEAD都沒有引用您的新提交(因此稱為“分離頭”部分)。
    另請參閱“ Git中的HEAD和ORIG_HEAD
  3. git checkout -b aNewBranch足以創建一個新分支,該分支將引用您的當前提交(不再是“分離的HEAD”)。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM