簡體   English   中英

使用git rebase將提交移動到新分支

[英]moving commits to new branch with git rebase

我在Git中苦苦掙扎,無法將它們正確地歸因於提交。 最新的兩次提交最終位於不同的分支中(一個在主分支中,一個在pm / gitrev中)-但需要它們都在同一功能分支中彼此重疊(例如,新的東西,例如pm / git-version),我可以推送到遠程存儲庫“ pm”,以便可以在GitHub上為origin / master創建適當的請求請求。

我當前的歷史記錄完全是線性的,看起來像:

$ git log --graph --pretty=format:"%h %d %s %n" -4
* 02f82ee  (HEAD -> git-version, pm/gitrev) Fail gracefully when operating on detached head 
| 
* 998d969  (pm/master, master) Change: Adopt the versioning scheme now with git 
| 
* c95db24  (origin/master, origin/HEAD) Added tag 0.4.5 for changeset e115586dd0a0 
| 
* 3418735  (tag: 0.4.5) Update: Changelog for release 

我基於998d969(master)創建了一個新分支,並將其他兩個分支重新建立到該分支上,例如git rebase -b master git-version 但是我的歷史是線性的,但是提交並沒有像假定的那樣改變分支。

git rebase我會錯過什么? 如何從最前面的提交中刪除所有分支信息,然后將它們移至基於源/主節點的聯合分支,但又是新分支?

我可以重寫遠程倉庫“ pm”的歷史記錄。

要將提交移動到另一個分支,可以使用命令git cherry-pick

git cherry-pick <commit-hash>

您可以在原始提交分支的日志中獲取提交哈希:

git log

暫無
暫無

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

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