公告:    欢迎来到王者★孤傲博客主页,若有问题敬请留言 !     没有大量的积累和感悟,是不会把事情做好的, 只有不停的进取,才能够不丢人! Copyright © 2016-2020 RaodiBlogs. All rights reserved.

intellij idea的TFS拉取项目文件不完全、文件误删恢复、TFS忽略文件解决方法

 

   为了亲身体验的整个过程,我这里将自己的文件先删除,同时再重启一遍intellij idea,结果会让人心态凉凉。也许有人会说你直接进去再拉一遍项目,不就行了吗? 抱歉今天我这台机器不知道抽了什么风,你们轻蔑的想法值得提倡和认同,但是在我这里已经试过不下十遍了,其中重新启动intellij idea也有五六遍。

        The selected changes affect directories and no files, so they cannot be shelved

一、出现的问题

  我整体的项目结构如图:

       废话不多说,我这里先删文件(这里千万别跟风操作,不然就有点凉凉了),在intellij idea的左侧项目资源界面,删除一个模块,这个模块的代码结构如下图所示,

  它既包含了若干的文件和若干的文件夹。删掉后的项目结构如下:

 

  重新启动intellij idea,让Ctrl+Z键的记忆功能失效。

 

  这个时候Ctrl+Z键的撤销删除功能已经不能使用了,我尝试再拉了一遍项目的源码,可是左侧的项目文件内容中,也没有出现我们之前删除的内容。或许只拉一遍没有出现,就多拉几遍吧,好吧,我试试,但愿吧,如下:

 

 

第四次之后,我心态崩了的同时,我们试着重新尝试另一种方式,试试看:

得到的结果是一样的,该怎么办呢? 把整个项目都删掉重新拉取云端的代码,还是默默选择回滚代码,这些方法都不可行,万一我修改了几天几夜的bug,那么岂不是白改了吗?别急,下面是解决方法:

 

二、解决方法

  1、找到误删除的内容,或者是TFS拉取项目文件不完全的部分,或者是TFS 忽略的文件。

    首先,鼠标选中项目的根目录,记住只选中项目的根目录,不用右键。

 

    依次选择菜单栏中的  “VCS” ->  "Shelve Changes .."  ,在打开的Shelve Changes 面板中仅仅勾选灰色的文件。

 

  2、双击该灰色的文件,在弹出的窗口中,把 “Include into commit”  勾选,这个很重要

        (****如果不勾选的话,当你按下Shelve Changes按钮时,会包以下的错误  :

 

              错误:" The selected changes affect directories and no files, so they cannot be shelved "

          **)

 

      当你勾选之后,到这里,恭喜你,你辛苦了几个星期的代码又恢复了!!!!如果试了一次代码,还是没有完全恢复,建议再试一遍,当然这种情况是非常罕见的。

 

 

   3、恢复不完全现象解决方法。

      我这里在恢复的过程中被我强制打断,出现了文件恢复不完全的现象   :

 

      同时在Shelve Changes面板中已经没有了待恢复的文件,这下子该怎么办呢?

      重新选择,从云端仓库再导一遍代码回来,在 " Update Project" 面板中,一定要把 “ Recursively process child folders ” ,勾选上,再点击OK即可。

        至于为什么一定要把 “ Recursively process child folders ” 勾选上,在我认为它可以将项目的部分子结构文件进行递归获取回本地。

 

在弹出的窗口中,选择“Yes”即可。

 

  如果在这个过程中,还是不小心将它No 了,建议重新再操作一遍1和2的步骤。至此,整个的文件恢复已经完成了,代码又回来了,高兴~~!

posted @ 2020-01-15 16:19  王者★孤傲  阅读(11326)  评论(0编辑  收藏  举报
……