Il file di progetto è stato spostato rinominato o non si trova sul tuo computer


150

Ottengo questo errore quando provo a caricare un progetto VS 2008 dal controllo del codice sorgente TFS:

Il file di progetto è stato spostato, rinominato o non si trova sul tuo computer

Dopo aver fatto clic su OK, il progetto dice "non disponibile". Qual è il problema? Come lo risolvo? Non ho mai avuto questo problema prima. Alcuni blog hanno detto di eliminare il file .suo ma non riesco a trovare il file .suo. Ho eliminato l'intero progetto sul mio computer locale in modo che alla successiva apertura ne crei uno nuovo, ma continuo a ricevere lo stesso errore.


28
Oh, come odio la TFS per avermi dato questi mal di testa!
John Leidegren,

2
Scendi, troverai la risposta corretta qui.
Claudio

Risposte:


270

Ciò che in genere aiuta a risolverlo è l'eliminazione delle opzioni dell'utente della soluzione, ovvero "SUO".

VS fino al 2013

Nel vecchio VS è memorizzato come "nascosto" SolutionName.suonella stessa cartella del .slnfile principale .

VS2015 o successivo

In VS2015 gli stessi dati sono stati spostati in una .vscartella "nascosta" nella stessa cartella del .slnfile principale .


6
+1. Messaggio di errore molto sfortunato - in realtà è più probabile che si verifichi quando hai spostato i file nel modo "corretto" secondo il tuo provider SCC. (es. usando 'tf rename' per TFS) Spostare il progetto su disco senza dire a TFS, o dimenticare di aggiornare un file sln / csproj, comporterà diversi messaggi di errore nella mia esperienza. I file SUO sono opachi, quindi rimani a grattarti la testa fino a quando non esegui un rapido treeclean / bruciatura.
Richard Berg,

8
Mi salva la giornata;)
Kamil Lach il

44
Non dimenticare di riavviare Visual Studio dopo aver eliminato il file .suo
orandov l'

8
Oh. Quindi ora il file .suo è nascosto. Perché? Oh, so perché. Siamo sviluppatori e ovviamente non siamo in grado di gestire la complessità aggiunta vedendo il file .suo all'aperto ;-)
Torben Rahbek Koch,

29
Questo funziona anche in Visual Studio 2015, sebbene il percorso del file .suo sia cambiato in <SolutionFolder> \ .vs \ <SolutionName> \ v14 \ .suo.
Greg M.

38

Ho appena riscontrato questo problema utilizzando VS 2013 dopo aver rinominato un progetto. La risposta di Stanley mi ha guidato alla soluzione:

Chiudi VS - elimina il file .suo - riavvia VS.


1
Potrei sbagliarmi, ma non credo di aver visto nemmeno il file .SUO, fino a quando non ho chiuso VisualStudio.
Michael R,

5
Voglio solo aggiungere - imperativo che chiudi VS prima di eliminarlo. L'eliminazione del file mentre VS è ancora aperto, quindi la chiusura e la riapertura non ha effetto. Prima devi chiudere!
wizloc,

23

Elimina il file .suo in un modo speciale.

  1. Non aprire la soluzione quando si elimina il file .suo nascosto.
  2. Riavvia VisualStudio.
  3. Apri la soluzione e aggiungi progetto senza messaggio di errore.

Ha funzionato per me Visual Studio 2019. Solo che hai eliminato la .vscartella nascosta
user919426

11

TFS funziona come la maggior parte dei pacchetti di controllo del codice sorgente: ricorda ciò che ha messo sul tuo computer in modo che quando "Get Latest" deve solo ottenere i chnages dall'ultimo "Get" invece di dover ottenere assolutamente tutto.

Questo ha un avvertimento: se elimini o rinomini i file locali sul tuo disco, TFS non saprà di averlo fatto e continuerà a pensare che siano dove li ha lasciati.

Se poi "Ottieni più recenti" non si preoccuperà di aggiornare i file mancanti.

È quindi probabile che tu ottenga tutti i tipi di errori "file mancanti", da TFS e da qualsiasi altro strumento che cerca i file.

Per aggirare il problema, devi:

  • Se pensi di poter avere delle modifiche che non vuoi perdere, copia la cartella di origine sul tuo PC come backup, per ogni evenienza!
  • Fare clic con il tasto destro del mouse sul progetto (in Esplora soluzioni) o sulla cartella (in Controllo sorgente)
  • Scegli "Ottieni versione specifica" dal menu contestuale
  • Scegli di ottenere la "Versione più recente" e seleziona l'opzione che dice (qualcosa del tipo) "forza ottenere i file già nell'area di lavoro", che dice a TFS di dimenticare ciò che "conosce" e di recuperare comunque tutti i file.

Se hai dei file modificati localmente (scrivibili), fai attenzione. C'è una seconda opzione che li sovrascriverà, perdendo le modifiche. Ma hai il backup, quindi dovresti essere al sicuro. In genere è meglio selezionare anche questa opzione per assicurarsi che tutto il codice sorgente sia completamente aggiornato. (Ma ovviamente solo se non ti dispiace perdere eventuali cambiamenti locali!)

Quando si OK, questo porterà forzatamente tutti i file nel progetto sull'unità locale e dovrebbe correggere il problema.


ho "ottenuto una versione specifica" e controllato "sovrascrivere tutti i file anche se il server di corrispondenza locale". nessun errore, ma non è arrivato nulla. Ho controllato da un altro computer e il progetto è in TFS e l'altra persona può lavorare bene su di esso.
sineas

A proposito, la mia cartella di origine locale è completamente VUOTA. Non c'è niente in esso. Inizialmente ho eliminato tutti i file in modo da poterne avere di nuovi. come aprire un nuovo progetto.
sineas

1
In tal caso, la prossima cosa da controllare sarebbe la mappatura dell'area di lavoro. In Esplora team, fai doppio clic sull'icona Controllo del codice sorgente e nella parte superiore della finestra visualizzata è una casella combinata a discesa. Rilascialo e scegli "aggiungi / modifica aree di lavoro". Modifica l'area di lavoro e verifica che il progetto TFS contenente il codice abbia una cartella corrispondente sul disco rigido locale. E assicurati di guardare questa cartella quando tenti di caricare la soluzione. (Suggerimento: confronta il tuo setup con l'altro sviluppatore che lavora per cercare di rintracciare l'origine del problema)
Jason Williams

9

Sebbene sia ben noto il difetto VS, sicuramente possiamo gestirlo!

  • Apri il file della soluzione in modalità modifica

  • Modifica il percorso relativo in modo che corrisponda al percorso fisico modificato / spostato.

    SccProjectUniqueName1 = Source\\Order\\Order.csproj
    SccProjectName1 = Order.ApplicationService
    SccLocalPath1 = Order.ApplicationService
    
  • Inoltre, assicurati il ​​percorso relativo corretto per i progetti di riferimento

    Project("{asdasd-301F-11D3-BF4B-asdasd}") = "Order",
            "Source\Order\Order.csproj", "{E25641BC-C990-40E2-8876-08AE8728F763}"
    EndProject
    

6

Prova ad aprire .csproj o .vbproj invece di .sln. Ciò che è probabilmente accaduto è che il file .sln (soluzione) ha un riferimento di file assoluto (invece di un percorso relativo) ai progetti componenti. Potrebbe essere necessario ricreare .sln o modificarlo a mano.


ho provato ad aprire il file .vbproj e questo è quello che ottengo. "Il file selezionato non può essere aperto come soluzione o progetto. Seleziona un file di soluzione o un file di progetto", inserisci anche come ricreare il file .sln. Sono nuovo in questo. grazie
sineas

Grazie! Ha aperto i file csproj, all'uscita ha chiesto di creare / salvare un nuovo file .sln e sovrascritto quello vecchio!
Rafael,

5

L'opzione più semplice elaborata per me è:

  1. Fare clic con il tasto destro del mouse sul progetto e rimuovere il progetto "non caricato" o "non disponibile"
  2. Fare clic con il tasto destro del mouse sulla soluzione e aggiungere "Progetto esistente"

Ho provato questo, ma sempre lo stesso errore, non sopporto questo stupido errore (davvero un bug, non posso accettare questo tipo di bug cattivo, estremamente confuso).
Senza speranza

1
Semplice e diretto ... capito.
Sarath Mohandas,

3

Nel mio caso, eliminare il file .suo non era sufficiente. Ho scoperto che la mia configurazione dell'area di lavoro aveva un errore. Ho scoperto e risolto il problema con questi passaggi:

  1. In Team Explorer, "Gestisci aree di lavoro ..."

    inserisci qui la descrizione dell'immagine

  2. Fai clic su "Modifica ..."

    inserisci qui la descrizione dell'immagine

  3. Correggere il valore in "Cartella locale"

    inserisci qui la descrizione dell'immagine

  4. Infine, elimina i file .suo interessati dalla risposta accettata.


2

Ho trovato più semplice creare un nuovo file sln Soluzione.


1

Cancella le mappature dell'area di lavoro (File -> Controllo del codice sorgente -> Aree di lavoro). Modifica l'area di lavoro e cancella tutti i mapping (più ripercussioni) o trova quello associato a questo percorso del server. Quindi apri Explorer controllo sorgente e rimappa. Fare doppio clic su SLN in Explorer controllo del codice sorgente e dovrebbe essere aggiornato. Non sei completamente sicuro di cosa sia successo o in quale stato sei riuscito a entrare, ma con questo dovrebbe farti spostare di nuovo.


1

Ho riscontrato questo problema e sono stato in grado di risolverlo ottenendo i .rptprojfile da un collega e copiandoli nella mia directory locale. Il progetto è stato quindi in grado di ricaricare.


1

Ho trascorso molto tempo a provare a risolvere questo problema. Ho fatto questi passaggi: rinominare il progetto, rinominare gli spazi dei nomi, rinominare la cartella del progetto, modificare il file .sln, modificare il file .suo nascosto. Progetto caricato ma non riconoscibile per TFS! Finalmente ho trovato questa guida .

Se si utilizza Resharper e TFVC è il controllo della versione, attenersi alla seguente procedura:

  • Fare clic con il tasto destro del mouse su Esplora soluzioni, selezionare Rinomina e immettere il nuovo nome

  • Fare nuovamente clic con il tasto destro del mouse sul progetto e selezionare Proprietà. Modificare "Nome assembly" e "Spazio dei nomi predefinito" nella scheda Applicazione.

  • Fai nuovamente clic con il pulsante destro del mouse sul progetto e seleziona Refactor -> Adjust Namespace. Accetta le modifiche.

  • Modificare AssemblyTitle e AssemblyProduct in Properties / AssemblyInfo.cs

  • Elimina le directory bin e obj in Esplora risorse

  • Apri Explorer controllo sorgente e rinomina la directory del progetto. Questo chiuderà la soluzione. Lascia che sia chiuso.

  • Apri il file SLN (con un editor di testo come Notepad ++) e modifica il percorso del progetto (dovrebbero essere presenti più posizioni).

  • Apri di nuovo la soluzione. Pulisci e ricostruisci il progetto.


0

Fai clic con il pulsante destro del mouse sul progetto non disponibile e modifica il file di progetto ... è probabile che troverai un percorso di file hardcoded o virtuale che non corrisponde alla destinazione del progetto.

Gentilezza,

Dan


2
non hai l'opzione Modifica. è solo ricaricare il progetto, tagliare e rimuovere.
sineas

0

Soluzione per questo

  1. Rinomina nuovamente la cartella del progetto
  2. Imposta una versione specifica e forza ottenere in TFS
  3. rimuovere l'opzione di sola lettura e nascosta nell'ultima cartella (non quella di rinomina)
  4. Ora puoi aprire il progetto senza problemi

0

A volte, anche se è stata modificata .slne .csprojil percorso, e rinominare manualmente, si potrebbe dimenticare di controllare il nome della cartella che contiene il progetto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.