【Git】解决Untracked Files Prevent Checkout的问题

本文目录

一、背景描述

二、问题原因

三、解决方案

3.1 方案1--删除文件

3.2 方案2-- 提交这些文件

3.3 方案2--git命令切换分支

一、背景描述

使用的工具:Windows10 + Idea + Git

今天从Git服务器上通过 Git Bash Here(如下图所示),克隆下来一个新的项目,此时一般都是master分支。

此时使用 Idea 打开新克隆下来的项目,想从master分支切换到dev分支,操作如下: 

结果会出现如下问题: 

二、问题原因
出现此问题的原因是因为本地有已加入Git版本控制的文件,但是没有 commit 所以在 检出(checkout)时会提示这个问题。

根据提示的内容(Move or commit them before checkout)我们就可以知道两种解决方案。

第一种解决方案就是 Move them(把这些文件移除)
第二种解决方案就是 commit them(提交这些文件)
下面分别说一下两种方案的具体操作。

三、解决方案
以下两种方案都可以解决上述问题,看个人喜好使用哪种方式都可以。

3.1 方案1--删除文件
如果不想删除文件(或者文件不能删除的话),请直接略过此方案,看第三种方案。

点击View Files,会弹出一个对话框,如下图所示:

对于我的项目是弹出了一个 .idea文件夹下的 .gitignore文件,没有用,所以我选择删除,点击 OK 后,再重新切换开发的分支即可成功。

Tips:需要注意的是如果项目太旧太乱可能会有很多冲突文件,耐心删除直到不再弹框提示Untracked Files Prevent Checkout即可切换分支。此时就不如使用第三种解决方案了。

3.2 方案2-- 提交这些文件
根据提示内容(Move or commit them before checkout),我们在检出分支的时候,需要把本地所有已加入Git版本控制的文件都commit了。这就是第二种方案,但是很明显,我不需要提交这个文件,所以这种解决方案需要根据实际情况了。

3.3 方案2--git命令切换分支
需要用到的Git命令:git checkout -f 分支名

先进入到项目所在的磁盘目录:鼠标右键 -- > Git Bash Here --> 弹出命令窗口 --> 手动输入 git checkout -f dev-V2.02.01-20220425 命令之后回车即可切换到开发的分支。

dev-V2.02.01-20220425 是我项目中的一个分支。
 

从图中可以看到已经成功切换到分支了。

Tips:第三种方案需要记住git的命令,相比较于第一种方案,可能稍微复杂一些,但是如果第一种方案解决不了的话,就可以使用第三种方案。


————————————————
版权声明:本文为CSDN博主「No8g攻城狮」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44299027/article/details/127553036

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值