git中的smart checkout和force checkout

切换分支时出现了这个问题:

git中的smart checkout和force checkout_第1张图片


这是因为shiyan01分支修改了代码,但是没有commit,
所以在切换到test分支的时候弹出这个窗口

一、smart checkout(智能签出)

会把shiyan01分支的改动内容带到test分支。合并处理后的内容就变成了test分支的内容,而shiyan01分支的改动会被丢失不见.

点击smart checkout会出现合并三框

(此图是shiyan01分支没有commit,然后直接切换到test分支)

git中的smart checkout和force checkout_第2张图片

点击接受左侧,  test分支变成了yuiyuishiyan,   shiyan01分支丢失了更改变回了原来的yuiyui

点击接受右侧,   test分支变成了yuiyuitest,      shiyan01分支丢失了更改变回了原来的yuiyui

点击应用按钮,   test分支变成了yuiyui,            shiyan01分支丢失了更改变回了原来的yuiyui


二、force checkout (强制签出)

不会把冲突的这部分内容带到目的分支,但是你在当前分支修改的所有内容就会被删除,就算再切回来也找不到了。
三、don`t checkout 

不切分支,继续留在当前分支了
 

你可能感兴趣的:(git,git)