【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的命令,相比较于第一种方案,可能稍微复杂一些,但是如果第一种方案解决不了的话,就可以使用第三种方案。

完结!

  • 18
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 14
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

No8g攻城狮

向每一个努力改变现状的你致敬!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值