I just merged one of the feature branches into develop branch, and since then, when I open Xcode, the .xcodeproj file seems lost, all files in the project navigator are gone also. click on the .xcodeproj file I get the following alert: The file couldn’t be opened.
This is although I am adding .xcodeproj to the .gitignore file across all the branches. Have you encounter such situation?
This might be caused by unresolved merge conflicts. In that case the XML structure is broken, so Xcode can't read it.
In that case you can try this:
In finder right click on the .xcodeproj and choose 'Show Package contents'.
Open project.pbxproj in an text editor (this is the actual project file, and has to be valid XML)
Check for merge conflicts (look for <<<<<<< and >>>>>>>) and manually resolve them (be careful!), and ensure the file has valid XML format
Save the file
Try again opening the .xcodeproj with Xcode
There might be better ways of resolving the conflicts, but this worked for me multiple times.
You also might want to check out this question: How to resolve merge conflicts in Git?
Basically, in a project if more than one developer are working and one developer has added some files(it may be .h,.m or any .png) and commits the project including .xcodeProj in source control management.
But due to some reason developer removes files or images from the project and also removes the use of those files or images from the project but forgets to commit the.xcodeProj project file.
If another developer checks out from the source control management and runs the application,he would get error messge error:path file/image name:No such file or directory.
So to avoid the error to run the application at our end successfully we can follow below steps
Right click on projectname.xcodeproj and click on showpackagecontent.
There we will get another file as project.pbxproj.
Open that file on text edit and remove the lines where the file or image has been mentioned.
Save the file.
And finally run the application it will work.
I know this is an old thread, but I had this issue today. I initially shrugged this answer as I don't have multiple users on the project, but I:
right clicked on the .xcodeproj and chose 'Show Package contents'.
From here, I noticed I couldn't open the project.pbxproj. I 'didn't have the necessary permissions', so I...
changed the permissions on the file to everyone can read/write, and then I was able to open the project without issue in Xcode.
not sure where this got crossed for me, but in case anyone sees this and has a similar issue and it's not a merging conflict.
Faced with the fact that the above methods did not work for me, my reason was this: when merging two files, the structure inside of project.pbxproj file overlapped and was broken, all I did was again thoroughly scan the conflicting sites for the correct syntax {some code} , availability ';' etc.
I am working with another dev and we're using TFS for source control. When he checks in a file or folder, I can see them with Source Control Explorer. I can do a Get Latest, and I can see that the file or folder is pulled down to my local file system.
However, if I flip over to my Solution Explorer, his new files or folders aren't appearing. I have clicked refresh, I have done a Get Latest from Solution Explorer, I have done a Get Specific Version from Solution Explorer.
Is there something I'm supposed to do to have them show up? Do I need to do an Add Existing Item every time he adds something to source control?
Thanks,
Chris
Adding files to source control is not the same thing with adding files to a project.
You are supposed to see the files on source control also.
To be able to see the files on solution explorer you need to add files to existing project by "Add Existing Item" option.
My partner and I are working on a project using TFS. For some reason when he adds files to the project then checks them in, I don't get them when doing an get latest version. The same thing happens when I check in files, he doesn't see them. We can both go in to source control and see the files are there, and even get latest version, but they are never added to the solution explorer. Any ideas what is happening?
If he, or you, has checked in the files, but not checked in the project file, then TFS will not download them if you execute a "get latest" by right clicking on the project or solution in Solution Explorer.
You WILL however get the files downloaded correctly if you right click and "get latest" on the folder in the source control window, however, they won't get loaded into your solution, because you haven't told TFS that they belong there.
Can you verify that the .csproj (or .vbproj, etc. depending on language) has been updated to actually include the new file(s)? Is the project file also being committed along with the new files?
I get this error when I try to load a VS 2008 project from TFS source control:
The project file has been moved, renamed or is not on your computer
After I click OK the project says "unavailable".
What is the problem? How do I resolve this? I never had this problem before. Some blogs said to delete the .suo file but I can't locate the .suo file. I deleted the entire project on my local computer so that the next time it opens it will create a new one, but I still get same error.
What typically helps to fix it is deleting the Solution User Options aka "SUO".
VS up to 2013
In the older VS it is stored as a "hidden" SolutionName.suo in the same folder as the main .sln file.
VS2015 or later
In VS2015 the same data was moved to a "hidden" .vs folder under the same folder as the main .sln file.
I just ran into this issue using VS 2013 after renaming a project. Stanley's answer guided me to the solution:
Close VS - delete .suo file - start VS again.
Delete the .suo file in a special way.
Don't have the solution open when you delete the hidden .suo file.
Restart VisualStudio.
Open solution and Add project without error message.
TFS works like most source control packages: It remembers what it has put on your computer so that when you "Get Latest" it only has to get the chnages since your last "Get" instead of having to get absolutely everything.
This has one caveat: If you delete or rename the local files on your disk, TFS won't know that you have done this, and it will still think they are where it left them.
If you then "Get Latest" it will not bother to update the missing files.
You are then likely to get all kinds of "missing file" errors, from TFS and any other tools that look for the files.
To get around it, you need to:
If you think you might have any changes in there that you don't want to lose, copy the source folder on your PC as a back up just in case!
Right click on the project (in Solution Explorer) or folder (in Source Control)
Choose "Get Specific Version" from the context menu
Choose to get the "Latest Version" and tick the option that says (something like) "force get of files already in your workspace", which tells TFS to forget about what it "knows" and get all the files again anyway.
If you have any locally-changed (writable) files, then be careful. There is a second option that will overwrite these, losing your changes. But you have the backup, so you should be safe. It's generally better to tick this option as well to make sure that all your source code is completely up to date. (But obviously only if you don't mind losing any local changes!)
When you OK, this will forcibly get all the files in the project to your local drive, and should correct the problem.
Easiest option worked out for me is:
Right click the project & Remove the "not loaded" or "unavailable" project
Right click the solution & Add "Existing Project"
Though it's well known VS defect, definately we can handle it!
Open the solution file in edit mode
Modify the relative path to match the modified/moved physical path ..
SccProjectUniqueName1 = Source\\Order\\Order.csproj
SccProjectName1 = Order.ApplicationService
SccLocalPath1 = Order.ApplicationService
Also, makesure of correct relative path for the referring project(s)
Project("{asdasd-301F-11D3-BF4B-asdasd}") = "Order",
"Source\Order\Order.csproj", "{E25641BC-C990-40E2-8876-08AE8728F763}"
EndProject
Try opening the .csproj or .vbproj instead of the .sln. What has probably happened is the .sln (solution) file has a absolute file reference (instead of a relative path) to the compoenent project(s). You may need to re-create the .sln, or hand-edit it.
In my case, deleting the .suo file was insufficient. I discovered that my workspace configuration had an error. I discovered and resolved the problem with these steps:
In Team Explorer, "Manage Workspaces..."
Click "Edit..."
Correct the value under "Local Folder"
Finally, delete the affected .suo files per the accepted answer.
I found it easiest to create a new Solution sln file.
Clear out your workspace mappings (File -> Source Control -> Workspaces). Edit the workspace and either clear out all the mappings (more repercussion) or find the one that's associated to this server path. Then open Source Control Explorer and remap. Double click the SLN in Source Control explorer and it should get latest. Not entirely sure what has happened or what state you managed to get into, but with this should get you moving again.
I ran into this issue and was able to resolve it by obtaining the .rptproj files from a co-worker and copying them into my local directory. The project was then able to re-load.
I spent a lot of time for trying solve this problem. I did these steps : rename project, rename namespaces, rename project folder, edit .sln file, edit hidden .suo file. Project loaded but it was unrecognizable for TFS! Finally I found this guide.
If you're using Resharper and TFVC is your version control, follow these steps :
Right-click the project in Solution Explorer, select Rename, and enter the new name
Right-click the project again and select Properties. Change the "Assembly name" and "Default namespace" on the Application tab.
Right-click the project again and select Refactor -> Adjust Namespaces. Accept the changes.
Change the AssemblyTitle and AssemblyProduct in Properties/AssemblyInfo.cs
Delete bin and obj directories in Windows Explorer
Open the Source Control Explorer and rename the project's directory. This will close the solution. Let it be closed.
Open the SLN file (with a text editor such as Notepad++) and change the path to the project (there should be multiple places).
Open the Solution again. Clean and Rebuild the project.
Right click on the unavailable project and edit the project file ... chances are, you will find a hardcoded file path or a virtual one that does not match where you checked the project out to.
Kindness,
Dan
Solution for this
Again rename the project folder
Set specific version & force get in TFS
remove read only & hidden option in the latest folder (not the rename one)
Now you can open the project without any issues
Sometimes, even though you changed .sln and .csproj path, and manually rename, you might forget to check the folder name that contains the project.
It happened to me too. Apparently the csproj files were not checked in when I had created them in my old computer, and so when I downloaded the project from TFS in my new computer, the files were not there.
After checking them in using my old computer and getting them from TFS in the new computer, I succeeded in reloading the project.
In my case, because I modified .csproj file, it changed to .csproj.user .
I remove .user from the end of the file.
We have a 2008 solution that has a file system website as part of the solution. This solution is under source control with Team Foundation Server. Every time the solution is closed it either checks out a file called vwd.webinfo or attempts to and complains that someone else already has it checked out.
Removing the file from source control does not fix the issue because it gets re-added automatically for some reason.
Why does this happen and is there something we can do about it to remove this nag?
Thanks a lot!
open "source control explorer"
find vwd.webinfo in the correct path
click "delete"
chek-in the operation to solve this problem
The file will still be in your file system and solution, but not under source-control. You won't see "plus" or "v" or "lock" button
Go to Property Pages, select Build on the left, and uncheck "Build Web site as part of solution" Then you can delete the file and it won't get created automatically.
You should be able to delete this file manually and have it not reappear. This file holds some information that used to be located elsewhere in the project in earlier versions but apparently is not necessary. Close your solution before deleting the file from source control and on the disk.