簡體   English   中英

GIT:將更改從一個分支移動到另一個分支

[英]GIT: Move changes from one branch to other

我有 2 個分支 A 和 B。我對 A 進行了一些更改並提交了它們。 然后我對 A 進行了更多更改(錯誤地)。 我把它們推到 B 並提交了它們。

但現在我看到 A(舊)和 B(新)的變化正在提交。 我如何恢復這個?

如果您推送了提交,則意味着遠程分支受到影響(不僅僅是您的本地分支)

您將需要挑選從 B 到 A 的提交(假設僅錯誤地在 B 上進行了一次提交):

git switch A
git cherry-pick B
git switch B
git reset --hard B~
git push --force

這將覆蓋 B 歷史記錄,如果多個協作者正在遠程存儲庫中工作,這可能會出現問題。
另一種選擇是恢復 B HEAD,添加一個額外的提交來取消最后一個的內容。

git switch B
git revert @
git push

那里不需要--force。

git checkout <branchname>
git reset --hard <commitid>

這會將所有內容恢復到原始狀態。 如果你的意思是別的,請詳細說明。

問候,澤尼瑪

暫無
暫無

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

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