我有一個git工作流問題,並且我沒有完全理解所有條款以知道該如何處理Google。Git:從克隆更改爲遠程分支
簡短版本:當本地存儲庫作爲遠程存儲庫的克隆啓動時,是否可以將本地git目錄「切換」爲遠程存儲庫的分支?我對git很陌生,所以我仍然在這裏加快速度,如果我已經說過一些似乎是錯誤/假設的事情,請讓我知道。
長版。
我有一個本地存儲庫,它是「中央」存儲庫的克隆。這個存儲庫有幾個分支,每個分支在原始存儲庫的主分支之前有很多修訂。
$ git branch
foo
* master
universal_imports
我知道我可以「切換」到我的本地分支之一,通過使用Git的checkout
命令
$ git checkout foo
$ git checkout universal_imports
etc.
我也有幾個遙控器
$ git remote
origin
upstream
的upsteam
的主人分支是我們的真相之源。它是產品,上述的中央庫。如前所述,我的本地主存儲庫是作爲此存儲庫的克隆而開始的。 (實際上,我的本地存儲庫是遠程的origin
的一個克隆,它是上游主分支的github fork。我不確定這是否相關)
這是我試圖解決的場景。我一直在我的分支上進行新的開發。我有很多版本超過原來的主人。但是,我剛剛收到了修復生產中的問題的請求。我在這裏的心智模型將
-
所以它的生產代碼
- 做修復並提交
- 合併我的本地代碼轉換成源的真理分支匹配
- 交換機我的本地代碼
- 將我的本地代碼切換回我的「真實」分支,並繼續開發新功能
目標是避免在準備好之前將任何新代碼投入生產。
缺少重新克隆中央存儲庫的地方,有沒有一個git工作流程?理想情況下,我想像我描述的「切換到遠程分支」,但如果這是無稽之談,有沒有辦法我可以用git來處理這種情況。 (在新的工作上大開眼界,但主要是能夠在歷史的後面進一步工作)