web-dev-qa-db-fra.com

Restaurer la connexion au projet Eclipse Subversion

J'ai un projet dans Subversion, que je développe en utilisant Eclipse. J'ai effectué la vérification d'origine à partir du référentiel svn depuis Eclipse. Tout allait bien pendant quelques semaines, puis pour une raison inconnue, Eclipse (en particulier: subclipse à Ganymède) ne reconnaît plus mon projet comme étant sous contrôle svn. Le menu contextuel de l'équipe affiche uniquement les options de base du menu "appliquer le correctif"/"partager ce projet". Depuis le shell, je peux toujours mettre à jour le projet à l'aide des outils de ligne de commande svn, donc je sais que les informations d'identification svn fonctionnent toujours. D'autres projets sous Subversion dans la même copie d'Eclipse fonctionnent toujours.

Je me rends compte que je peux supprimer la copie locale et la vérifier à nouveau, mais je préfère comprendre ce qui ne va pas - résoudre le problème plutôt que masquer les symptômes. Où Eclipse stocke-t-il sa connaissance des projets sous contrôle de version? J'ai regardé le .project fichier et le .settings répertoire, mais ne pouvait voir aucune mention évidente de la nature svn ou quelque chose de similaire, même dans les projets qui fonctionnent toujours correctement.

99
Ian Dickinson

Si vous utilisez sublipse comme fournisseur SVN, je vous recommande de procéder comme suit

Équipe -> Partager le projet est généralement suffisant pour connecter les métadonnées.

(c'est-à-dire en supposant que les fichiers .svn sont toujours là, ce qu'ils semblent être si vous pouvez travailler sur la ligne de commande).

J'espère que cela vous aidera à savoir pourquoi cela se produirait, je n'en ai aucune idée

123
Paul Whelan

J'ai trouvé un moyen simple de réimporter le projet

22
jerry

Le simple fait de faire équipe -> Partager le projet (selon la réponse à cette question fournie par @Paul Whelan) n'a pas fonctionné pour moi. L'assistant de partage de projet a agi comme si le projet n'était pas déjà dans SVN (même si le dossier .svn était présent pour mon projet).

J'ai fini par résoudre le problème en désinstallant les modules complémentaires Subversive et JavaHL (via Aide | À propos d'Eclipse | Bouton Détails d'installation | Onglet Logiciel installé | Désinstaller ...), puis en réinstallant Subversive. Lorsque vous y êtes invité après le redémarrage d'Eclipse, j'ai choisi d'installer le connecteur SVNKit plutôt que le connecteur JavaHL.

Après avoir fait cela, quand j'ai de nouveau essayé Team -> Share Project ..., Eclipse a correctement reconnu que mon projet était déjà présent dans SVN, et il a réussi à rétablir la connexion.

7
Jon Schneider

Addendum: il s'avère que mon problème se manifeste lorsque je démarre Eclipse en dehors du vpn de l'entreprise, avec un projet dans l'espace de travail attaché à un référentiel svn à l'intérieur du vpn. Heureusement, le passage des plugins Eclipse svn de subversif à subclipse l'a résolu.

Ian

4
Ian Dickinson

Depuis Eclipse, j'ai fermé le (s) projet (s) et rouvert ce qui a résolu le problème. Tous les liens SVN sont de retour pour tous les projets dans mon espace de travail.

3
Nathan

J'ai eu le même problème et ce forum m'a aidé à trouver la bonne réponse.

Mon projet précédent a été configuré à l'aide de subclipse. La nouvelle Eclipse avait subvesive.

L'installation de subclipse m'a aidé à récupérer les options svn sous team!

J'espère que cela aide quelqu'un d'autre.

cordialement

Anshu Prateek

2
user414944

Dans la version Juno avec Subversive, j'ai fait:

  • File/Import fait apparaître le popup d'importation.
  • De là, sélectionnez Projets généraux/existants dans Workspace.
  • Dans le volet suivant, vous sélectionnez le répertoire racine. Ensuite, il vous montrera tous les sous-répertoires. Ils seront tous sélectionnés par défaut.
  • Désélectionnez ceux dont vous ne voulez pas.

Il "importera" alors votre répertoire existant, qui peut être utilisé sur place, ils sont déjà situés dans votre répertoire d'espace de travail.

1
Chelmite

Sans savoir sur quelle plateforme vous vous trouvez, je ne sais pas si votre problème est similaire au mien. Cependant, j'ai récemment (en fait sur deux plates-formes différentes!) Eu des problèmes où une mise à jour de Subversive (ou peut-être Eclipse elle-même, pas clair) a causé les connecteurs de ne plus se charger. Sans les connecteurs, Subversive ne peut pas se connecter à un projet. Mais Eclipse ne va pas vous exclure de votre projet, il supprimera simplement les fonctionnalités liées à SVN.

Regardez la vue Erreurs, qui est un journal des diverses erreurs d'Eclipse (exceptions de classe non trouvées, etc.) et voyez s'il y a des lignes liées aux composants subversifs. Malheureusement, je ne peux pas vraiment recommander une solution - sur ma plate-forme Mac OSX, il suffisait de réinstaller les éléments de base et les connecteurs subversifs. Sur ma machine Linux (peut-être en raison d'une mise à niveau du système d'exploitation), je dois réinstaller complètement Eclipse, car trop de cruches se sont accumulées pour que je puisse enquêter pleinement.

1
rjray

Cela a fonctionné pour moi: clic droit -> TortoiseSVN -> Paramètres -> Propriétés de superposition d'icônes, sélection Shell comme cache d'état. Cliquez sur Ok, Actualiser la page.

0
ranu

J'utilisais deux implémentations SVNKit (1.7.x et 1.8.x) simultanément avec la version du référentiel SVN (1.8.x).

En conséquence, Team -> Share projects ... a toujours demandé un message de validation. De toute évidence, SVNKit 1.7.x a été utilisé, ce qui n'est pas compatible avec SVN 1.8.x.

Après avoir supprimé SVNKit 1.7.x, Eclipse a utilisé la seule version correcte de SVNKit 1.8.x disponible et tout a fonctionné comme prévu.

0
Thomas Rawyler

Je peux reproduire ce problème de manière fiable - cela se produit lors de l'extraction de certains projets Maven en exécutant "Extraire en tant que projet Maven ..." non pas sur le dossier contenant le POM lui-même mais sur un répertoire parent (tel que "tronc"). Dans ce cas, Subclipse extrait le projet sans aucune plainte, en le plaçant dans un répertoire d'espace de travail avec un nom d'espace réservé tel que maven.1424425443350. Inside ce répertoire crée un sous-répertoire avec le nom de l'artefact Maven. Cela confond à la fois Subclipse et Subversion: Subclipse, comme nous l'avons vu, oublie immédiatement que le projet est sous contrôle de version, et si vous appelez svn status à partir de la ligne de commande dans le maven.1424425443350 répertoire, il vous indiquera que le répertoire est sous contrôle de version mais que tous les fichiers contrôlés par version sont manquants.

Aucune des solutions de contournement présentées dans les autres réponses ne fonctionnera si c'est la raison pour laquelle Subsclipse a oublié sa connexion SVN. Au lieu de cela, la seule solution consiste à supprimer le projet et à le récupérer à nouveau, cette fois en vous assurant que la récupération est effectuée sur un répertoire contenant un POM plutôt que sur un répertoire de niveau supérieur.

Une meilleure solution globale serait que Subclipse refuse d'exécuter "Extraire en tant que projet Maven…" sur des répertoires qui ne contiennent pas de POM, ou bien de mieux gérer les cas où il essaie de le faire de toute façon en recherchant des sous-répertoires pour les projets Maven.

0
Psychonaut

Idem dans mon cas: les répertoires .svn étaient là, mais mon projet ne supportait pas les actions svn.

Après un peu de piquer, il s'est avéré que le plugin subversif a juste disparu après un arrêt forcé d'Eclipse.

La solution était de (ré) installer subversive, et maintenant tout va bien à nouveau.

Cheers v.

MISE À JOUR: J'ai changé Eclipse vers une nouvelle version qui n'avait tout simplement pas le plugin installé, c'est la raison pour laquelle j'ai dû l'installer à partir de zéro.

0
tishma