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的步驟。至此,整個的文件恢復已經完成了,代碼又回來了,高興~~!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM