簡短的回答很簡單:不,遠程跟蹤分支不受影響。
想想像origin/master
這樣的遠程跟蹤分支的一個好方法是,幾乎所有的時間你的git都獨立於它們的(origin)git,除非你告訴你的git調用它們的git和座標。這樣做的命令 - 通過互聯網電話呼叫遠程 - 是git fetch
和git push
(當然還有最初的git clone
)。因此,origin/master
始終是「您的git與之同步的最後一次」master
在原始位置「。
當你獲取或推,然後您混帳得到的什麼都及其分支機構是他們的git的想法,並更新你的遠程跟蹤分支。它將它們設置爲當時的任何遙控器,只要您也有這些SHA-1 ID。 您可以限制您的git更新哪些分支,但直接git fetch
的默認值是獲取所有遠程的當前信息。
還有一個命令是手機了遙控器,但不更新您的git的遠程跟蹤分支:git ls-remote
確實的第一步獲取或推,然後簡單地顯示所有從該得到的參考名稱遠程。嘗試一下,它是純粹的信息,但會讓你看到這是如何工作的。
使用Git不能指向自己的遠程跟蹤分支到你沒有SHA-1。由於git fetch
通常帶來的一切,這是主要更新的一個。用git push
你問遠程更改其SHA-1 ID到你的git發送的東西,所以如果它說「是」,那麼根據定義你也有這些對象 - 但這只是保證你的分支和/或標籤發送過來,而不是其他分支。
其實有幾個,但只是一個很好的嘗試插圖。爲了完整起見,我會提及git remote show
有時也會打開遙控器。
如果您將分支B合併到分支A中,則需要將更改推送到分支A的遠程分支,以使更改顯示在那裏。 –
對不起,我不是這個意思。我想知道你什麼時候在做git fetch + git merge,遠程跟蹤分支是否使用本地更新進行更新。 – Boon
如果您有本地更改,您可以執行'git stash'來存儲您的更改,然後'git pull'從遠程分支獲取更改,然後'git stash pop'重新應用您的更改。做'git pull'不會自動將本地更改應用到遠程分支。你必須自己推動它們。 –