TFS - Branchement pour le développement expérimental :La solution ne parvient pas à se charger

StackOverflow https://stackoverflow.com/questions/42490

  •  09-06-2019
  •  | 
  •  

Question

Clause de non-responsabilité:Je suis bloqué sur TFS et je déteste ça.

Ma structure de contrôle de code source ressemble à ceci :

  • /dév
  • /versions
  • /branches
  • /mise à niveau-expérimentale

Je suis passé du développement à la mise à niveau expérimentale et je n'y ai pas touché.J'ai ensuite fait un peu plus de travail en développement et j'ai fusionné avec la mise à niveau expérimentale.D'une manière ou d'une autre, TFS s'est plaint du fait que j'avais des changements dans la source et la cible et que j'ai dû les résoudre.J'ai choisi de "Copier l'élément de la branche source" pour les 5 éléments.

Je vérifie la mise à niveau expérimentale dans un dossier local et j'essaie d'y ouvrir le fichier de solution principal.TFS me demande :

"Des projets ont récemment été ajoutés à cette solution.Souhaitez-vous les obtenir du contrôle de source ?

Si je dis oui, il fait certaines choses mais revient finalement sans charger une poignée de projets.Si je dis non, j'obtiens le même résultat.

En comparant mon sln dans les deux branches, je me dis qu'elles sont égales.

Quelqu'un peut-il me faire savoir ce que je fais de mal ?Cela devrait être une opération de branchement/fusion simple...

TIA.


MISE À JOUR:

J'ai remarqué que si je clique sur "oui" dans la boîte de dialogue ci-dessus, les projets sont téléchargés à la racine $/ du contrôle de source...(c'est à dire.hors des dossiers dev & branches)

Si j'ouvre la solution dans la branche, supprime les projets morts et essaie de les rajouter (en cliquant avec le bouton droit sur sln, ajoutez un projet existant, choisissez le projet situé dans le dossier de la branche, cela me donne l'erreur...

Impossible de charger le projet c:\sandbox\my_solution\proj1\proj1.csproj, le fichier a été supprimé ou supprimé.Le chemin du projet que j'essayais d'ajouter est le suivant :c:\sandbox\my_solution\branches\experimental-upgrade\proj1\proj1.csproj

Qu'est-ce qui mène à ces projets dehors de leur racine locale ?Le fichier de solution est identique à celui de la branche dev et ces projets se chargent très bien.J'ai également regardé les fichiers vspscc et vssscc mais je n'ai rien trouvé.

Des idées ?

Était-ce utile?

La solution

@Ben

Vous pouvez réellement effectuer une suppression complète dans TFS, mais cela est fortement déconseillé à moins que vous sachiez ce que vous faites.Vous devez le faire depuis la ligne de commande avec la commande tf destroy

tf destroy [/keephistory] itemspec1 [;versionspec]
           [itemspec2...itemspecN] [/stopat:versionspec] [/preview]
           [/startcleanup] [/noprompt]

Versionspec:
    Date/Time         Dmm/dd/yyyy
                      or any .Net Framework-supported format
                      or any of the date formats of the local machine
    Changeset number  Cnnnnnn
    Label             Llabelname
    Latest version    T
    Workspace         Wworkspacename;workspaceowner

Juste avant de faire cela, assurez-vous de l'essayer avec le fichier /preview.De plus, chacun a sa propre méthodologie de création de branches.Le mien consiste à créer des branches dans les versions et à effectuer tout le développement dans le dossier de développement ou racine.De plus, il semblait que le branchement fonctionnait bien pour vous, seul le fichier de solution était foiré, ce qui peut être dû à un problème de liaison et au fichier vssss.

Autres conseils

@Pseudo:Aucun changement n’a encore été apporté à cela.Je devrai peut-être le supprimer et rebrancher (cependant, vous ne pouvez vraiment pas supprimer complètement dans TFS)

Et je dois être en désaccord...le branchement est absolument une bonne pratique pour les changements expérimentaux.Les étagères ne sont qu'un stockage temporaire qui sera sauvegardé si je ne veux pas encore m'enregistrer.Mais cela doit être développé pendant que nous développons de véritables fonctionnalités.

Sans en savoir plus sur la configuration de votre solution, je ne peux pas en être sûr.Mais si vous avez des références de projet qui pourraient l'expliquer.Parce que vous avez le sous-dossier "experimental-upgrade" sous "branches", vos chemins relatifs ont changé.

Cela signifie que lorsque VS recherchait vos projets référencés dans ..\..\project\whatever, il doit désormais rechercher dans ..\..\..\project\whatever.Notez le supplément ..\

Pour résoudre ce problème, vous devez rajouter les références de votre projet.Je n'ai pas trouvé de meilleur moyen.Vous pouvez soit les supprimer et les rajouter, soit accéder à la fenêtre des propriétés et modifier le chemin d'accès, puis les recharger.Quoi qu'il en soit, vous devrez refaire vos références à partir de n'importe quel projet.

Vérifiez également vos dossiers de travail pour vous assurer qu’aucun de vos projets n’a été téléchargé dans les mauvais dossiers.Cela peut arriver parfois...

Un certain nombre de choses.Les structures de dossiers sont-elles les mêmes ?Pouvez-vous supprimer et rajouter les références du projet avec succès ?

Si vous créez une solution puis ajoutez manuellement tous les projets, cela fonctionne-t-il.(Cela n’est peut-être pas réalisable – nous avons des solutions avec plus d’une centaine de projets).

Une autre chose (et c'est peut-être idiot) : après avoir effectué la branche, l'avez-vous validé ?Je me demande si vous avez créé une branche et ne l'avez pas archivé, puis avez fusionné, puis lorsque vous avez essayé de vous enregistrer, TFS était très confus.

@Kévin :

Cela signifie que lorsque VS recherchait vos projets référencés dans ....\project\whatever, il doit maintenant rechercher dans ......\project\whatever.Notez le supplément ..\

Vous êtes peut-être sur quelque chose ici, mais cela n'explique pas pourquoi certains projets se chargent et d'autres non.Je n'ai pas encore trouvé de corrélation entre eux.

Je pense que je vais essayer de rajouter les projets et voir si cela fonctionne.

@Cory :

Je pense que c'est ce que je vais essayer...J'ai environ 20 projets et environ 8 ne se chargent pas.Les structures de dossiers sont identiques à partir de la racine...c'est à dire:il n'y a aucune référence en dehors de DEV.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top