[英]git rebase local branch to remote master
我對git完全陌生,在緊急情況下可以使用git命令將本地分支重新設置為遠程master。 事情是這樣發生的。
1.我在Github上從haiwen / seadroid分出了一個倉庫 Logan676 / seadroid
2.我在Logan676/seadroid
上創建了一個名為lguo
的新分支
3.然后做一些修改,提交。 同時,原版主機haiwen/seadroid
也被其他人更新。
4,現在我想將lguo
haiwen/seadroid
的最新起源大師。
我在下面使用了命令:
git fetch origin # Updates origin/master
git rebase origin/master # Rebases current branch onto origin/master
gitbash中的輸出為: Current branch lguo is up to date
。
但是團隊成員告訴我,我的分支機構是基於派生的回購主數據庫而不是原始主數據庫。 我對此感到很困惑,是否錯過任何命令?
順便說一句,我注意到有人這樣寫
git clone
git checkout -b dev_branch
[do some changes, commit]
git fetch origin
git rebase origin/master
git push origin HEAD:master
所以我應該添加最后一個命令行
git push origin HEAD:master
恐怕要使用該命令,我擔心會損壞原始主機嗎? 我該怎么辦? 您的任何幫助將不勝感激。
雖然可以從本地分支機構A推送到遠程分支機構B,但在這種情況下,兩個分支機構已經分開,並且該推送將被拒絕。 您仍然可以強制執行推送,但這將意味着丟失自創建分支lguo以來master中發生的所有提交。
我建議您執行以下操作
git checkout master
git pull origin master
git merge lguo
這可能需要合並。 生成的master分支具有您對lguo所做的所有更改。 最后:
git push origin master
遠程源指向github上的克隆Logan676 / seadroid ,而不是haiwen / seadroid 。 您的Logan676 / seadroid本地克隆不知道原始的haiwen / seadroid存儲庫。
您需要將原始存儲庫添加為本地克隆的附加遠程目錄:
git remote add haiwen git@github.com:haiwen/seadroid.git
那你可以做
git fetch haiwen
git rebase haiwen/master
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.