[請益] Git checkout 疑問

作者: nakahusa (NA)   2014-12-17 16:56:50
最近開始使用 Git,
也還算順手,真的挺方便的,
尤其是在同一個專案有兩件以上的待修改問題時,
可以自由切換,並會自動將所有檔案調整到該 branch 的狀態。
不過目前發現一個問題,
假設有 branch A 和 B,
在 B branch 時,如果 stage 裡檔案沒有進行 add 就 checkout 到 A branch,
檔案好像會發生錯亂的問題…
疑問是:在 checkout 之前,是否一定要將目前所在的 branch add 並 commit?
作者: aquarianboy (我是沒牌的營養師!)   2014-12-17 17:27:00
可查一下 git stash
作者: nakahusa (NA)   2014-12-17 17:46:00
喔喔~ 感謝a大,這樣就可以避免不必要的 commit 了所以如果沒有使用 stash,也沒先進行 add 和 commit 就checkout 到其他 branch 確實會有檔案錯亂的問題對嗎?還是我使用的方法有錯呢?
作者: mmis1000 (秋月戀楓)   2014-12-17 18:31:00
預設你沒stash他根本不給你checkout阿
作者: nakahusa (NA)   2014-12-17 23:08:00
忽然想到 stage 透過 stash 也可以很多個… 應該是說stage 不是對應 branch 而是分開管理的,每個 branch 沒有自己的 stage,這樣對嗎 QQ"
作者: LPH66 (-6.2598534e+18f)   2014-12-17 23:13:00
你的問題是你的改動是新增檔案, 這跟修改檔案又不一樣了新增檔案不會對已有的檔案做更改, 所以切換 branch 時除非那個檔案在目標 branch 有才會有衝突因此這種狀況 git 就會讓你切過去
作者: mmis1000 (秋月戀楓)   2014-12-18 02:34:00
看來是,如果兩個branch中的commit過的檔案一樣就能切過去,如過不一致,他就會要你先stash

Links booklink

Contact Us: admin [ a t ] ucptt.com