我是 git 新手
當我檢查 github 上的分支時,我在本地創建了一個分支orm并將其推送到 github 我看到了

這說this branch is 1 commit ahead of master這是有道理的,但是當我創建一個拉取請求并確認將它與主分支合并的拉取時,狀態更改為

現在它說 this branch is 1 commit behind master
如果我點擊它會要求我創建一個拉取請求以將 master 合并到 orm 分支

如果我這樣做,它會回到this branch is 1 commit ahead of master
它似乎永遠不會結束......所以我的問題是,這甚至是我應該關心的事情嗎?!1 commit ahead if master我的意思是,當我將代碼推送到 github 時,我顯然應該創建一個拉取請求……但我應該忽略this branch is 1 commit behind master拉取請求確認后顯示的內容嗎?
uj5u.com熱心網友回復:
但我是否應該忽略“此分支是 master 后面的 1 個提交”,它在拉取請求確認后顯示
tl; dr:可能,是的,如果您不想調整作業流程,可以忽略它。
細節:
要確定是否可以忽略它,您需要了解為什么會發生這種情況。完成拉取請求時,有不同的選項。默認選項是創建合并提交。在您的情況下,創建 1 個新提交master并沒有打開orm,這就是為什么 PR 完成后orm立即出現 1 個提交。發生這種情況時,您可以放心地忽略它。下次您從orminto完成 PR 時master,您將落后 2 次提交,下一次落后 3 次提交,等等。只要和之間的差異orm沒有master變化,您可以放心地忽略這一點。
在某些時候,如果一個不同的分支被合并到master中,那么orm后面將會有更多的提交,并且差異將不再匹配,這就是你應該考慮再次合并的master時候orm。
補充說明:
- 在 GitHub 上完成 PR時還有其他合并選項,稱為“Squash Commits”和“Rebase and merge”。在您的情況下,您也不想要這些,因為在這兩個 GitHub 中都重寫了提交(即使在不需要變基時也可以變基)。使用這些選項,您的
orm分支最終將提前 1 次提交和落后 1 次提交。GitHub 目前沒有快進合并選項,這是您在 PR 完成后需要使分支相同的選項。考慮以下選項之一來解決您的問題,或者直接忽略它。 - 你真的需要一個長壽的
orm分支嗎?根據您團隊的分支策略,您可以考慮使用功能分支而不是orm每次開始作業時,您都可以簡單地從 latest 分支出來master,然后該分支將已經擁有所有這些合并提交,并且將完全是最新的. - 在本地完成
orminto的 PR 后,您可以考慮合并最新的into以獲取該合并提交,然后再開始向其添加更多提交。請注意,這與水晶的拉入建議非常相似。是否使用標志取決于您,并且取決于您是否有其他人與您共享分支。如果您總是在完成into的 PR 后立即執行此操作,那么無論您是否使用 rebase 都不應該有所不同。mastermasterormormmasterorm--rebaseormormmaster
uj5u.com熱心網友回復:
創建拉取請求后,只要比較基本和主控是綠色的,那么一切都應該是好的。
通常在我開始開發之前,總是拉/下載最新的代碼:
git pull origin <branchName> --rebase
注意:在您的情況下,請替換<branchName>為 master。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/493154.html
