簡體   English   中英

如何從git中的remote / master轉到最新的提交?

[英]How do I go to the latest commit from remote/master in git?

我不小心將文件保存在錯誤的分支上。 然后我做了git reset --soft HEAD^現在git status說我落后了14次提交並列出了一堆紅色的修改過的文件。 包括一些未跟蹤的文件。

我不知道該怎么做。 我試圖從遠程倉庫轉到最新的提交但它說我的git pull后我的本地更改將被覆蓋。

救命。 我不想搞砸我當地的回購。 我只想回到我所處的狀態,將編輯后的文件保存在正確的分支中,然后提交。

如果您更改了本地分支,並且不想丟失任何更改,則可以使用git-stash 在嘗試之前,我建議您備份本地存儲庫 請嘗試以下步驟:

  1. git stash save 'local changes' 這將在臨時位置保存您的本地更改,並允許您在沒有任何先前更改的情況下處理當前分支。

  2. git pull <remote-name> <branch-name> 如您所知,它將從遠程分支檢索更新的提交,並應用於您的本地分支。

  3. git stash pop 這將恢復您在步驟1中執行的操作 它將對您之前的更改(您保存的更改)應用於本地分支。 如有任何沖突,您有責任解決任何沖突。 完成后,您可能想要提交並推送 - 這取決於您。

不要驚慌

  1. 備份您的存儲庫。

  2. 使用git stash save您的更改。 這會將您的更改保存在藏匿處

  3. 然后,從遠程分支git pull <remote> <wrong-branch>git pull <remote> <wrong-branch> 這會將您的工作副本返回到原始分支HEAD。 在開始處理變更集之前,這就是您的分支的樣子。

  4. 現在,將隱藏的更改應用於您的工作副本: git stash apply Git會足夠聰明地忽略與現有提交相匹配的隱藏更改,因此您將使用與提交錯誤分支之前相同的狀態保留工作副本。

  5. 現在簽出正確的分支,並像往常一樣提交:

     git checkout <right-branch> git add [...] git commit -m "blah blah blah" 

    如果您的更改集與正確的分支不兼容,則在簽出正確的分支時可能需要糾正您的更改,但一旦完成,您的更改現在將在正確的分支上提交。

暫無
暫無

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

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