Si j'essaie de mettre à jour mon dépôt subversion, il indique que je dois exécuter le nettoyage. Si j'exécute le nettoyage, il indique qu'un fichier est manquant. (J'ai supprimé un répertoire MASSIVE de fichiers qui n'ont pas pu être validés ce matin de mon ordinateur personnel, mais j'ai ensuite validé le même ensemble de fichiers à partir du travail, et maintenant mon dépôt à la maison est en panne). Donc, le nettoyage dit:
Le nettoyage n'a pas pu traiter blablabla Impossible de définir le fichier blablabla en lecture-écriture: le système ne peut pas trouver le fichier spécifié.
Si je mets à jour, il dit:
Commande: erreur de mise à jour: l'opération précédente n'est pas terminée; exécutez le «nettoyage» s'il a été interrompu Erreur: veuillez exécuter la commande «Nettoyage». Terminé!:
Comment obtenir ce décollage?
la source
Réponses:
J'ai été dans des situations similaires. Avez-vous essayé d'exécuter le nettoyage à partir de la racine de votre espace de travail? Je sais que parfois un nettoyage à partir d'un répertoire enfant (où se situe le problème) ne fonctionne pas, et le nettoyage à la racine de l'espace de travail le fait.
Si cela échoue toujours, puisque vous avez supprimé un répertoire enfant quelque part. Essayez également de supprimer 1 niveau supérieur du répertoire enfant (en supposant qu'il ne s'agit pas de la racine) et réessayez la mise à jour et le nettoyage.
Si les tentatives de nettoyage ne réussissent à aucun niveau, alors la réponse est malheureusement extraire une nouvelle copie de travail.
la source
Il n'est souvent pas nécessaire de procéder à une nouvelle extraction ou à une nouvelle copie.
Je viens de résoudre un problème similaire lié à l'erreur "l'opération précédente n'est pas terminée" avec l'aide de ceci ( Lien )
Il semble que svn se bloque parfois lors du traitement des commandes / opérations. Toutes ces opérations sont stockées dans le fichier de base de données wc.db dans le dossier .svn.
En téléchargeant SQLite dans mon répertoire de paiement et en exécutant
vous pouvez obtenir une liste de toutes les opérations en attente. Ces opérations sont celles que l'erreur appelle "non terminées".
En exécutant
toutes les anciennes opérations sont supprimées de la file d'attente de travail et l'erreur disparaît. Pas besoin d'une nouvelle caisse ou quoi que ce soit
la source
La console en cours d'exécution
svn cleanup
a résolu le même problème pour moi.la source
svn cleanup
fournira également des informations plus détaillées que l'utilisation du plug-in Tortoise Explorer, ce qui la rend très utile dans des situations comme celle-ci.svn cleanup
, mercisvn cleanup
, assurez-vous que la console est élevée. Je ne l'ai pas fait au départ et j'ai eu l'red-write: Access is denied
erreur.Je viens d'avoir un problème similaire. L'exécution de Process Explorer a montré qu'un autre programme (Notepad ++) avait un descripteur de fichier dans un dossier que SVN avait essayé de supprimer. Lorsque j'ai fermé Notepad ++, "Clean Up" a pu s'exécuter correctement.
la source
J'étais confronté à ce problème après avoir ajouté un pot qui est déjà dans le SVN et j'en ai ajouté la nouvelle version avec le même nom.
Dans Eclipse, j'ai essayé cela
En utilisant les étapes ci-dessus, je suis en mesure de synchroniser.
la source
J'avais essayé les réponses les plus votées ici et quelques autres en vain. Ma
WORK_QUEUE
table était vide et je n'ai pas pu essayer de nettoyer un dossier plus élevé. Ce qui a fonctionné était le suivant (c'est via Tortoise SVN);Break Locks
est cochée et cliquez sur OKL'opération de nettoyage se termine maintenant avec succès et je peux continuer. Aucun téléchargement de sqlite3 ou d'autres solutions compliquées n'est requis.
la source
Essayer d'exécuter le nettoyage alors que vos fichiers sont ouverts m'a posé des problèmes. dès que j'ai fermé ma candidature (Visual studio) j'ai fait le ménage et ça a réussi
la source
J'utilise la tortue SVN. Lorsque le nettoyage a échoué, cochez l'option de nettoyage
Assurez-vous que l'option Briser les verrous est cochée.
Étape de nettoyage
Il a déjà répondu, mais parfois l'image aide
la source
J'ai eu le même problème, dans mon cas, j'utilisais tortue svn avec l'application que je veux dire. En utilisant le shell cmd de Windows en mode root, j'ai appliqué le nettoyage svn puis la mise à jour svn .... Ensuite, vous pouvez revenir au mode application et cela fonctionnera parfaitement!
la source
J'ai essayé de supprimer le dossier .svn vers un autre emplacement et je l'ai replacé dans le même dossier racine. Après avoir essayé de mettre à jour le SVN, il a été mis à jour. Je ne sais pas exactement comment cela a fonctionné.
la source
J'ai eu le même problème et j'ai découvert que j'avais un fichier .svn caché au niveau c: \. Une fois que j'ai supprimé ce dossier caché (.svn), tout a bien fonctionné. Je dois avoir involontairement créé un répertoire de travail sur le lecteur racine.
la source
Dans mon cas, j'avais gulp-watch en cours d'exécution qui a causé les problèmes. Après l'avoir arrêté, j'ai pu exécuter la commande de nettoyage.
la source
salut les gars dans mes cas après avoir fermé Visual Studio et réessayez de nettoyer ça marche bien
la source
Je suis également resté avec le même problème que j'ai essayé de souffler:
1.Essayez de tuer le processus lié à svn, à savoir TSVNCache.exe et TortoiseProc 2.Réversion des fichiers non versionnés et suppression de ceux-ci, que j'ai dans svn. 3. nettoyage à l'aide de l'invite de commande "nettoyage svn"
et enfin lorsque le bureau a redémarré, cela a fonctionné pour moi, donc pour le redémarrage du système a fonctionné pour moi
la source
supprimez le svn du dossier principal et remplacez-le à partir d'une autre copie viable que vous avez de elsewere.and puis mettez à jour. Le dossier svn sera normalement un dossier caché. Assurez-vous donc d'afficher le dossier avant d'effectuer les étapes ci-dessus.
la source
Solution de contournement qui a fonctionné pour moi:
C'est fait, mais je ne peux pas expliquer pourquoi cela se produit. Si vous ne supprimez pas les fichiers, la commande de nettoyage indique qu'il ne peut pas lire / écrire ces fichiers.
la source
J'ai eu le même problème, ce qui a fonctionné pour moi:
la source
J'ai eu une erreur telle que "Impossible de modifier les autorisations du fichier '/Users/Code/UnitTest.cpp': aucun fichier ou répertoire de ce type". La subversion est confuse à propos d'un fichier qui n'est plus là. J'ai simplement fait quelque chose comme "echo ABCD >> /Users/Code/UnitTest.cpp" pour créer une copie du fichier, puis nettoyer. Ça a marché.
la source
Dans mon cas, l'erreur est apparue lors de la tentative de validation à partir d'un IDE. Lorsque j'ai exécuté la validation des mêmes répertoires avec TortoiseSVN dans l'explorateur, l'opération a réussi.
la source
Cela m'est arrivé lors de l'utilisation d'externes et l'un d'eux était corrompu. J'ai dû aller dans ce dossier et effectuer un nettoyage. Ensuite, le nettoyage a fonctionné pour la copie de travail entière.
Exemple: en utilisant externe
^/widgets/foo common/foo-widget
, commencez par nettoyer le dossiercommon/foo-widget
.la source
J'ai résolu cette erreur aujourd'hui quand elle s'est produite en essayant de valider SVN. L'erreur était authentique, TortoiseSVN n'a pas pu accéder à un fichier que j'ai essayé de valider. Ce fichier avait été enregistré lors de l'exécution d'un programme "en tant qu'administrateur" sous Windows. Cela signifie que le fichier dispose d'un accès administrateur mais pas d'accès à partir de mon compte (TortoiseSVN fonctionnant en tant qu'utilisateur interactif). J'ai pris possession du fichier nommé sous mon compte Windows et après cela, le nettoyage a pu continuer.
la source
J'ai d'abord rencontré ce problème en essayant de me connecter avec TortoiseSVN. Initialement, les deux, le nettoyage de TortoiseSVN et le nettoyage de la console svn ont tous deux échoué avec des messages similaires à ceux de l'affiche originale.
Mais ma solution (découverte accidentellement) était d'attendre quelques minutes. Je pense que TSVNCache conservait certains de ces fichiers au moment de l'enregistrement.
la source
suivez les étapes ci-dessous.
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
.svn
dossier dans le répertoire, coupez ce dossier et collez-le dans le lecteur ou l'emplacement séparé (hors du répertoire svn)3) Maintenant, retournez dans le répertoire - faites un clic droit et sélectionnez
TortoiseSVN -->Repo-browser
4)
Checkout
le dossier (il n'effectuera pas de nouvelle vérification).5) Tous vos articles seront à nouveau versionnés, et cela réparera le problème interne de svn, et le problème devrait être résolu.
la source
Dans mon cas, une instance d'arrière-plan de la machine virtuelle Java était en cours d'exécution, tuant le nettoyage qui a réussi.
la source
J'avais pris le dossier .svn de mon collègue développeur et remplacé mon dossier .svn par celui-ci. Ça a marché pour moi. Je ne sais pas quelles peuvent être les autres conséquences!
la source
En utilisant ce lien, https://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-dug-cleanup.html
J'ai remarqué que le tutoriel avait coché les 6 meilleures options. En désespoir de cause, je l'ai essayé en utilisant ces cases à cocher, et à ma grande surprise, cela a fonctionné. Assurez-vous de lire attentivement ce que chacun fait. En regardant la description de chacun, ils semblaient sûrs à inclure pour moi, donc l'un de ces éléments vérifiés semblait avoir résolu le problème qui me tenait.
la source
Cela peut se produire lorsque des fichiers sont encore ouverts lorsque vous essayez de basculer / nettoyer SVN.
J'avais une succursale où j'avais créé un nouveau fichier, que j'avais ouvert dans une autre application. Le passage à une autre branche n'a pas pu supprimer le fichier, ce qui a entraîné l'échec du commutateur. Cela a également causé la
svn cleanup
échec de la, mais cela ne s'affiche pas comme la raison dans l'interface utilisateur de Tortoise SVN.L'exécution à
svn cleanup
partir d'une fenêtre de console (sur le dossier racine) montre clairement l'erreurfile\location\file.ext: The process cannot access the file because it is being used by another process
La fermeture de toutes les poignées / fenêtres de fichiers ouverts et l'exécution de la console
svn cleanup
permettent alors au nettoyage de fonctionner correctement.Longue histoire - exécutez
svn cleanup
dans la console pour voir une erreur plus détaillée.la source
Suite à la réponse de Sigurd V (vous devriez essayer en premier), certaines bases de code plus grandes ont plusieurs dossiers '.svn', et ce n'est pas nécessairement celui du répertoire racine qui a la tâche verrouillée.
Si tel est le cas, vous devez vérifier chacun d'eux. Si vous avez déjà SQLite et Powershell, vous pouvez localiser rapidement le répertoire incriminé.
Pour rechercher les dossiers verrouillés, exécutez (remplacez
path\to\sqlite.exe
):Get-ChildItem -Path . -Filter '.svn' -Recurse -Hidden | foreach { $toFind = $_.FullName + "\wc.db" ; gci $toFind | foreach { echo $_.FullName ; path\to\sqlite.exe $_.FullName "select * from work_queue" } }
.Cela donne une liste des répertoires .svn et, en dessous de chacun, une liste des tâches en cours.
S'il y en a avec des tâches inachevées, pour chaque exécution (remplacement
path\to\sqlite.exe
etpath\to\.svn\wc.db
):path\to\sqlite.exe path\to\.svn\wc.db "delete from work_queue"
la source
J'ai vu plusieurs problèmes
svn
, dont celui-ci, résolus en supprimant / créant un.svn/tmp
répertoire. Ensuite, exécutezsvn cleanup
la source
Veuillez suivre ce lien. C'est résoudre votre problème complètement.
Allez dans le répertoire principal clic droit -> Tortoise SVN -> Clean Up
https://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-dug-cleanup.html
la source