web-dev-qa-db-fra.com

Erreur SVN "L'opération précédente n'est pas terminée"

Ce matin, je commettais plusieurs éléments dans un référentiel svn. Lors de la validation, mon système d'exploitation est tombé en panne et maintenant toutes les commandes svn (y compris le nettoyage) se retrouvent avec la même erreur.

Previous operation has not finished; run 'cleanup' if it was interrupted
Please execute the 'Cleanup' command."

Je ne reçois pas d’autres erreurs comme Subversion est bloqué car "l’opération précédente n’a pas été terminée"? et comme le référentiel est très gros, je ne veux pas tout récupérer comme suggéré ici: Problèmes avec l’opération précédente qui ne se termine pas

24
Sigurd V

En fait, je viens de trouver la réponse à ma question en regardant ici

Il semble que svn soit bloqué dans l'ancienne opération . Toutes ces opérations sont stockées dans la base de données wc.db du dossier .svn.

En téléchargeant SQLite dans mon répertoire de paiement et en cours d'exécution

sqlite3.exe .svn/wc.db "select * from work_queue"

de cmd

j'ai eu une liste de toutes les opérations en attente. Ces opérations sont celles "pas finies" Puis en exécutant 

sqlite3.exe .svn/wc.db "delete from work_queue"

toutes ces opérations en attente sont supprimées et je peux commettre à nouveau . Pas besoin de re checkout ou quoi que ce soit

52
Sigurd V

J'ai essayé toutes les solutions énumérées dans cette page, mais mon problème n'a toujours pas été résolu.

Je l'ai résolu par un autre moyen. Au cas où certains n’auraient toujours pas trouvé de solution, essayez ceci (j'utilise TortoiseSVN 1.9.5):

  1. Cliquez sur "Nettoyer ..." comme d'habitude et ouvrez la fenêtre de nettoyage

  2. check "casser les serrures"

  3. cliquez sur le bouton "OK" pour exécuter

12
Joon

svn cleanup a fonctionné pour moi. Vous devrez peut-être exécuter ceci en tant qu'administrateur.

5
JieLi

J'ai essayé la solution supérieure de Sigurd V, mais la requête SELECT m'a donné des erreurs. J'utilise SVN 1.9.2 et SQLite 3.13.0.

Pour clarifier, le fichier à télécharger du site SQLite est "sqlite-tools-win32-x86-3130000.Zip (1,51 Mio)"

Voici ce que j'ai fait avec l'aide de notre logiciel:

  1. téléchargez ce Zip et copiez sqlite3.exe dans mon dossier de travail
  2. dans la ligne cmd, connectez-vous à la base de données svn dans ce dossier: sqlite3.exe .svn/wc.db
  3. tapez commande en SQLite pour afficher ce qui est bloqué: sqlite> select * from work_queue;
  4. tapez la commande to SQLite pour supprimer les requêtes: sqlite> delete from work_queue;
  5. répétez l'étape 3 pour vérifier que rien n'est verrouillé.
  6. tout est rentré dans l'ordre maintenant!

Capture d'écran montrant step3/4/5:

 step 3/4/5

3
wildwildwilliam
  • Fermez tous les fichiers ou programmes en utilisant quelque chose de votre référentiel (cela déverrouillera le svn pour le nettoyage)

  • Lancez 'svn cleanup' sur votre copie de travail (montrez-nous le résultat s'il y a erreur)

Ouvrez Paramètres Tortoises. Effacer toutes les données dans l'onglet Données sauvegardées

1
Evgeny Korolyuk

J'ai vu beaucoup de discussions et répondre à la même question. Ce que j'ai le plus souvent vu, c'est "Run Cleanup" jusqu'au niveau supérieur du répertoire. Mais j'ai essayé le plus et j'ai quand même eu l'erreur. Donc, ce que j'ai fait est de le résoudre à l'achèvement.

  • Installez sqllite (binaire 32 bits pour Windows). Placez le fichier exe dans le dossier où se trouve le répertoire .svn de niveau supérieur. 

  • sqlite .svn/wc.db “select * from work_queue”;

  • supprimer de work_queue;

Exécutez ces trois instructions et, après cette opération, nettoyez. Il fonctionnera sans aucun hassel.

1
LivCool

J'ai aussi cette erreur et je ne veux pas télécharger sqlite. Et finalement je résous ceci en:

  1. Fermez mon Eclipse. (C’est important, sans cela, je ne peux pas passer à l’étape suivante avec succès)
  2. Sur votre dossier de projet, faites un clic droit, TortoiseSVN-> Nettoyer-> OK

alors je peux mettre à jour et commettre sans erreur!

0
Leif Liu

Assurez-vous que votre répertoire de travail n'est ouvert dans aucun IDE.

S'il est ouvert, fermez-le puis faites svn clean-up.

0
Nitin Sharma

Je suis capable de le résoudre de la manière suivante.

1) Allez dans le répertoire où vous ne pouvez pas nettoyer avec succès via svn. (Dossier racine ou dossier enfant).

2) Sélectionnez le dossier .svn dans le répertoire, coupez-le et collez-le dans le lecteur séparé ou dans un emplacement distinct

3) Maintenant, allez dans le répertoire - faites un clic droit et sélectionnez TortoiseSVN-> Repository-browser.

4) Et, vérifiez le dossier. (Il ne sera pas effectuer de nouvelle commande)

5) Tous vos éléments seront à nouveau versionnés, et le problème interne de svn sera réparé. Ce problème devrait être résolu.

0
Kunal Khatri