[请益] 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