最近我們從TFS轉移到了GIT,因此我仍在學習如何使用這個令人驚歎的工具。GIT - 如何切換分支而無需執行更改並反之亦然
在我在一個非常簡單的結構,工作像下面的一個時刻:
main -------------------------------------- 01 ----------
\ /
dev ----------------------- 01 ---------- 02 ----------
\ / /
feat/login ------ 01 --- 02 --- 03 --- 04 --- 05 ---
- 開發商
feature/something
工作,每TOT小時他們辦理登機手續,並觸發與測試構建 - 當功能穩定時,它們會合並回
dev
,其中包含一個或多個簽入feature/something
- 當整個功能準備就緒時,它們將
dev
的功能合併到main
個
的問題有以下幾點:
- 如果我開始從
feat/login
工作,如果我做git checkout dev
我不從dev
獲得最新的代碼,但也是我最新的本地文件中feat/login
改變。 如何結賬dev
而不繼續本人以前分支未提交的本地更改? - 假設開發者犯了一個錯誤,我怎麼能
rollback
到以前的辦理入住手續01
在dev
並推動它,以便最晚辦理入住手續02
不是最後一個了嗎?
您可能需要在檢出其他分支之前「藏匿」您的更改或「提交」它們。 – CoryKramer
對於第一個問題,您是否在切換到開發時詢問如何刪除這些本地更改?如果你想保留它們,你必須在切換之前提交它們或隱藏它們,但是如果你只是想刪除它們,只需在切換後執行'git reset'即可。請記住,當您稍後切換回來時,它們不會神奇地再現,這就是爲什麼您必須在切換之前提交或存儲的原因。 –
超級快! 夥計們寫一個答案,以便我可以標記它是正確的。 'git reset'和'stash',我不知道:-) – Raffaeu