删除.git的影响、git分支切换时注意事项

一、删除.git的影响

master分支文件

删除.git的影响、git分支切换时注意事项_第1张图片

dev分支文件

删除.git的影响、git分支切换时注意事项_第2张图片

删除.git后

删除.git的影响、git分支切换时注意事项_第3张图片
文件为删除.git前分支的文件状态。

二、git分支切换时注意事项

情景:如果我在分支A,想要跳转到分支B。

git的规矩是,在那个分支上进行的提交,就算哪个分支上的工作。
也就是说,一旦你把A分支上尚未完成的工作带到了B分支上并在B分支上顺利提交,那么你本来希望是在A分支上进行的工作,则会被提交到本地库中B分支上,该部分工作在A分支下用git log命令查看不到但是在B分支下则可以查看到,相当于A分支什么工作都没做,B分支做了。

  1. 分支A工作区和缓存区都是干净的(即在A分支commit后没有再做修改),随意的切换分支,各自能看到自己分支的文件,不会造成任何影响。
  2. 分支A有尚未add的文件, 当你切换到分支B时,会把A分支下的这个尚未add的文件带过去,分支A上修改的内容,分支B中是看得见的。
  3. 分支A有已经add但是仍未commit的文件,当你切换到分支B的时候,会把A分支下的这个已经add但未commit的文件带过去,分支A上修改的内容,分支B中是看得见的。

在2这种情况下,如果你继续在B分支上add、commit、push然后切回A分支,这个尚未add的文件在A分支中就会丢失。

在3这种情况下,如果你继续在B分支上commit、push然后切回A分支,你会发现这部分已经add尚未commit的文件会丢失。

办法:
1.跳转分支之前git status一下查看是不是有没有add和commit的工作,如果有,可以的话,就都提交掉。

2.如果确实有尚未add和commit的工作,但是并未完成不方便进行提交,可以利用git stash进行现场保留,然后跳转。

3.如果1或2你都没有做,很不小心地带着未commit的工作跳转到了另一分支下,跳转之后的提示可以让你意识到你把先前分支的工作带过来了,不做任何修改直接再跳回去就好(就又带回去了),然后进行1或2步中所说。

你可能感兴趣的:(Git(xx-xuxin),git)