Unable to switch branches in git, shows error: The following untracked working tree files would be overwritten by checkout
Unable to switch branches in git, shows error: The following untracked working tree files would be overwritten by checkout
当我对分支进行一些更改并尝试切换到主分支时,我不断收到此错误:以下未跟踪的工作树文件将被检出覆盖
此线程上的解决方案不起作用:The following untracked working tree files would be overwritten by checkout
我猜测导致此错误的原因是您的错误中列出的文件在您当前的 searchPlus
分支中未被跟踪,但它们在您的 中被跟踪 master
分支。如果 Git 盲目地签出 master
,它会破坏(即覆盖)这些文件。当 Git 检查另一个分支时,它会覆盖所有跟踪的文件。通常,如果被覆盖的文件已经被跟踪,则风险很小,因为您仍然在某个地方有另一个分支。但是,对于未跟踪的文件,它会覆盖它们,因此您将失去这些文件在 searchPlus
上的状态。更糟糕的是,在签出 master
之后,如果您要 return 到 searchPlus
,这些文件实际上会 消失 因为 Git 将确定这些文件不存在于您的 searchPlus
分支中。
为了解决这个问题,一个可能的解决方案是 git add
这些文件并进行提交。假设它们已经在 master
中提交,也许对这些文件进行版本控制是有意义的。
附带说明一下,您的错误消息中的那些 .project
文件在我看来很可疑。通常,配置文件不应由 Git 进行版本控制,因此您可能想看看是否真的希望它们在 master
分支中进行版本控制。
当我对分支进行一些更改并尝试切换到主分支时,我不断收到此错误:以下未跟踪的工作树文件将被检出覆盖
此线程上的解决方案不起作用:The following untracked working tree files would be overwritten by checkout
我猜测导致此错误的原因是您的错误中列出的文件在您当前的 searchPlus
分支中未被跟踪,但它们在您的 中被跟踪 master
分支。如果 Git 盲目地签出 master
,它会破坏(即覆盖)这些文件。当 Git 检查另一个分支时,它会覆盖所有跟踪的文件。通常,如果被覆盖的文件已经被跟踪,则风险很小,因为您仍然在某个地方有另一个分支。但是,对于未跟踪的文件,它会覆盖它们,因此您将失去这些文件在 searchPlus
上的状态。更糟糕的是,在签出 master
之后,如果您要 return 到 searchPlus
,这些文件实际上会 消失 因为 Git 将确定这些文件不存在于您的 searchPlus
分支中。
为了解决这个问题,一个可能的解决方案是 git add
这些文件并进行提交。假设它们已经在 master
中提交,也许对这些文件进行版本控制是有意义的。
附带说明一下,您的错误消息中的那些 .project
文件在我看来很可疑。通常,配置文件不应由 Git 进行版本控制,因此您可能想看看是否真的希望它们在 master
分支中进行版本控制。