该项目文件已被移动重命名或不在您的计算机上
我得到这个错误,当我尝试从TFS加载VS 2008项目(源代码pipe理)
该项目文件已被移动重命名或不在您的计算机上
我点击确定后,项目说“不可用”。 问题是什么? 我该如何解决这个问题? 我从来没有遇到过这个问题。 有些博客说删除.suo文件。 但我不能find.suo文件。 我删除了我的本地计算机上的整个项目,所以下次打开它会创build一个新的,但我仍然得到相同的错误。 有任何想法吗?
通常有助于解决问题的方法是删除解决scheme用户选项(即“SUO”)。
VS直到2013年
在较旧的VS中,它将作为“隐藏的” SolutionName.suo
存储在与主.sln
文件相同的文件夹中。
VS2015或更高版本
在VS2015中,同一date被移到与主.sln
文件相同的文件夹下的“hidden” .vs
文件夹中。
我刚刚在重命名项目后使用VS 2013遇到了这个问题。 斯坦利的回答引导我解决问题:
closuresVS – 删除.suo文件 – 再次启动VS。
以特殊的方式删除.suo文件。
- 当您删除隐藏的.suo文件时,不要打开解决scheme。
- 重新启动VisualStudio。
- 打开解决scheme并添加项目没有错误消息。
TFS的工作方式与大多数源代码控制软件包一样:它记住它放在你的计算机上的什么东西,这样当你“获取最新”时,它只需要从你上一次“获取”之后获得chnages,而不必得到一切。
这有一个警告:如果删除或重命名磁盘上的本地文件,TFS不会知道你已经完成了这个操作,而且它仍然会认为它是离开它们的地方。
如果您然后“获取最新”,它不会麻烦更新丢失的文件。
然后,您可能会从TFS和其他查找文件的工具中获取各种“丢失文件”错误。
为了解决它,你需要:
- 如果您认为您可能有任何不想丢失的更改,请将PC上的源文件夹复制为备份以防万一!
- 右键单击该项目(在解决scheme资源pipe理器中)或文件夹(在源代码pipe理中)
- 从上下文菜单中select“获取特定版本”
- select获得“最新版本”,并勾选说(类似的东西)“强制获取文件已经在你的工作区”的选项,这告诉TFS忘记它“知道”,并无论如何获得所有的文件。
如果您有任何本地更改(可写入)的文件,请小心。 还有第二个选项会覆盖这些,失去你的改变。 但是你有备份,所以你应该是安全的。 最好勾选这个选项,以确保所有的源代码都是最新的。 (但显然只有当你不介意丢失任何本地的变化!)
当你确定的时候,这会强制把项目中的所有文件都存到你的本地驱动器,并且应该纠正这个问题。
虽然这是众所周知的VS缺陷,但我们肯定可以处理它!
-
在编辑模式下打开解决scheme文件
-
修改相对path以匹配修改/移动的物理path
SccProjectUniqueName1 = Source\\Order\\Order.csproj SccProjectName1 = Order.ApplicationService SccLocalPath1 = Order.ApplicationService
-
此外,确定引用项目的正确相对path
Project("{asdasd-301F-11D3-BF4B-asdasd}") = "Order", "Source\Order\Order.csproj", "{E25641BC-C990-40E2-8876-08AE8728F763}" EndProject
尝试打开.csproj或.vbproj而不是.sln。 可能发生的事情是.sln(解决scheme)文件具有绝对文件引用(而不是相对path)到组件项目。 您可能需要重新创build.sln,或者手动编辑它。
我发现创build一个新的Solution sln文件是最容易的。
清除你的工作区映射(文件 – >源代码pipe理 – >工作区)。 编辑工作区并清除所有映射(更多反馈)或find与此服务器path关联的映射。 然后打开Source Control Explorer并重新映射。 双击源代码pipe理器中的SLN,它应该是最新的。 不完全确定发生了什么事情或者你设法进入什么状态,但是这样会让你再次移动。
我遇到了这个问题,并能够通过从同事获取.rptproj
文件并将其复制到本地目录中来解决此问题。 该项目然后能够重新加载。
在我的情况下,删除.suo文件是不够的。 我发现我的工作区configuration有错误。 我发现并解决了这个问题:
-
在团队资源pipe理器中,“pipe理工作区…”
-
点击“修改…”
-
更正“本地文件夹”下的值
-
最后,按照接受的答案删除受影响的.suo文件。
解决scheme为此
- 再次重命名项目文件夹
- 设置特定的版本&强制进入TFS
- 删除最新文件夹中的只读&隐藏选项(不是重命名文件夹)
- 现在你可以打开项目没有任何问题
右键单击不可用的项目并编辑项目文件…很可能会发现一个硬编码的文件path或虚拟path,与您检查项目的位置不匹配。
善良,
担
我花了很多时间来解决这个问题。 我做了这些步骤:重命名项目,重命名命名空间,重命名项目文件夹,编辑.sln文件,编辑隐藏的.suo文件。 项目加载,但无法识别的TFS! 最后我find了这个指南 。
如果您使用的是Resharper,并且TFVC是您的版本控制,请按照下列步骤操作:
-
右键单击解决scheme资源pipe理器中的项目,select重命名,然后input新名称
-
再次右键单击项目并select“属性”。 在“应用程序”选项卡上更改“程序集名称”和“默认命名空间”。
-
再次右键单击该项目,然后select重构 – >调整命名空间。 接受更改。
-
更改属性/ AssemblyInfo.cs中的AssemblyTitle和AssemblyProduct
-
在Windows资源pipe理器中删除bin和obj目录
-
打开源代码pipe理器并重命名该项目的目录。 这将closures解决scheme。 让它被closures。
-
打开SLN文件(使用Notepad ++之类的文本编辑器),并更改项目的path(应该有多个位置)。
-
再次打开解决scheme。 清理并重build项目。