Récemment, notre serveur svn a été changé et nous avons fait un commutateur svn.
Étant donné que la copie de travail avait une énorme quantité de ressources non versionnées, la copie de travail a été verrouillée et nous avons commencé à changer de dossier par dossier pour tous les dossiers sous svn, ce qui fonctionne parfaitement.
Mais au plus haut niveau du référentiel, lorsque j'essaie de mettre à jour des fichiers, j'obtiens le svn: Working copy '.' erreur verrouillée et le nettoyage n'aide pas non plus. Quand je fais le nettoyage, j'obtiens des erreurs comme celles-ci - svn: 'content' n'est pas un répertoire de copie de travail
Un nouveau paiement n'est PAS une option du tout. Y a-t-il d'autres façons de nettoyer et de libérer les verrous et de faire le commutateur complètement?
EDIT: Le dernier paragraphe de la réponse de JesperE
Si vous obtenez "pas une copie de travail" lorsque vous effectuez un "nettoyage svn" récursif, je suppose que vous avez un répertoire qui devrait être une copie de travail (c'est-à-dire le répertoire .svn au niveau supérieur le dit), mais il manque son propre répertoire .svn. Dans ce cas, vous pouvez simplement supprimer / déplacer ce répertoire, puis effectuer une mise à jour locale
semble être la solution au problème dans le référentiel. J'ai identifié ces dossiers et fait une nouvelle vérification de ces dossiers spécifiques et wow, les verrous sont libérés lors du nettoyage suivant! Merci beaucoup JesperE !!
Mais, je ne peux toujours pas comprendre l'erreur de commutateur svn qui se lit maintenant comme,
svn: Le référentiel à 'svn: // repourl / reponame / foldername' a uuid 'm / reponame', mais le WC a 'b5b39681-0ff6-784b-ad26-2846b9ea8e7d'
Des idées ?
Réponses:
Si vous obtenez un "pas une copie de travail" lorsque vous effectuez un récursif,
svn cleanup
je suppose que vous avez un répertoire qui devrait être une copie de travail (c'est-à-dire que le.svn
répertoire au niveau supérieur le dit), mais il lui manque son propre.svn
répertoire. Dans ce cas, vous pouvez simplement supprimer / déplacer ce répertoire, puis effectuer une mise à jour locale (c.rm -rf content; svn checkout content
-à-d.).Si vous obtenez une
not a working copy
erreur, cela signifie que Subversion ne peut pas y trouver un.svn
répertoire approprié . Vérifiez s'il y a un.svn
répertoire danscontents
La solution idéale est un nouveau contrôle, si possible.
la source
rm -rf
supprimecontent
définitivement le dossier . Faites une sauvegarde avant de l'exécuter.Je suis entré dans une situation similaire (
svn: 'papers' is not a working copy directory
) d'une manière différente, alors j'ai pensé publier mon histoire de bataille (simplifiée):Oups! fixer les autorisations ... puis:
Et même s'éloigner
papers
et courirsvn up
(ce qui fonctionnait pour l'OP) ne l'a pas corrigé. Voici ce que j'ai fait:Ça a marché.
la source
Je l'ai résolu par
Dans mon cas, le problème était dû à la suppression des fichiers .svn.
la source
Peut-être que vous venez de copier l'arborescence du dossier et d'essayer d'ajouter le plus bas.
dans ce cas, vous devez valider le répertoire au niveau supérieur.
la source
Solution: renommer le répertoire qui n'est pas une «copie de travail» Extraire / mettre à jour / restaurer à nouveau ce répertoire Déplacer les fichiers du répertoire renommé vers de nouvelles modifications de validation
Raison: vous avez apporté des modifications à certains fichiers dans le répertoire .svn, cela rompt la «copie de travail»
la source
Si vous avez créé un fichier dans un nouveau répertoire, au lieu de «svn add newdir / newfile», utilisez «svn add newdir» car vous devez ajouter le répertoire. Tous les fichiers à l'intérieur du répertoire seront ajoutés par défaut.
la source
Je viens de recevoir "pas une copie de travail", et pour moi, la raison était l'Automouter sur Unix. Juste un nouveau "cd / path / to / work / directory" a fait l'affaire.
la source
Pareil, j'avais besoin de mettre à jour un dossier 'contrib':
Dans mon cas aussi, le problème était dû à la suppression des dossiers .svn.
Résolu.
la source
J'ai essayé de coller le dossier .svn du sous-dossier vers le dossier racine. Ça marche!!!
la source
C'est ce que j'ai fait:
la source
Je rencontre également ce problème dans l'opération diff svn, il a été causé par un chemin de fichier incorrect, vous devez ajouter
'./'
pour indiquer le répertoire de fichiers actuel.la source
Chaque dépôt subversion a un identifiant unique (uuid). Subversion l'utilise pour s'assurer que le dépôt est en fait le même lorsque vous effectuez des opérations telles que la commutation. Vous devriez probablement changer l'uuid sur le serveur pour qu'il soit le même qu'avant.
la source
Serait-ce une incompatibilité de format de copie de travail? Il a changé entre svn 1.4 et 1.5 et les outils plus récents convertissent automatiquement le format, mais les anciens ne fonctionnent plus avec la copie convertie.
la source
Vous devez avoir supprimé un fichier de base SVN de votre projet (qui sont des fichiers en lecture seule). Pour cette raison, vous obtenez cette erreur.
Vérifiez à nouveau un nouveau projet, fusionnez les modifications (le cas échéant) de votre ancien projet SVN avec un nouveau à l'aide de "Winmerge" et validez les modifications dans votre dernière extraction.
la source
@JesperE mentionne que vous devez changer l'uuid. Les informations suivantes devraient vous aider à y parvenir.
Sur SVN 1.5+, vous pouvez faire svnadmin setuuid; vous pouvez ensuite vérifier qu'il a été défini correctement à l'aide de svnlook uuid. Sur les versions antérieures de SVN, c'est un processus plus difficile. Voir http://chestofbooks.com/computers/revision-control/subversion-svn/Managing-Repository-UUIDs-Reposadmin-Maint-Uuids.html
De plus, l'UUID de "m / reponame" semble suspect. Je crois que ce devrait être un nombre au format hexadécimal comme celui de la copie de travail, alors peut-être que cette action améliorera les choses tout au long :-)
[J'ai initialement commenté la réponse de @ JesperE , mais j'ai créé cette réponse pour la rendre plus évidente pour les gens et plus utile pour Google. J'ai depuis supprimé mes commentaires. ]
la source
Eu ce même problème, il s'avère que nous avions Slik 1.6.2 ainsi que Tortoise sur la même machine. Tortoise avait été mise à jour (et avait mis à jour la copie de travail) mais Slik ne l'avait pas fait, donc Tortoise a bien fonctionné, mais les lignes de commande ont échoué avec:
Supprimer Tortoise et Slik, puis réinstaller Tortoise avec les outils de ligne de commande activés a résolu ce problème pour moi.
la source
pour mac: - prenez la caisse côté serveur et une nouvelle fenêtre s'ouvrira pour sélectionner le répertoire de votre machine locale que mettre tout votre code dans le dossier sélectionné puis ouvrir svn côté local et ajouter et valider le projet
la source
Aujourd'hui, j'ai trouvé le même problème le
/FILE_NAME/ is not a working copy
matin et j'ai passé plus de deux heures pour le résoudre. Après une longue période de RND et de Google, j'ai trouvé une solution et c'estCHECKOUT
.CHECKOUT
duSUBVERSION
local au nouveau projet.J'espère que cela vous sera utile.
la source
Récemment, j'utilisais d'autres développeurs Mac. J'ai eu la même situation, le problème était; J'ai d'abord dû taper get repo path to terminal mais je ne l'ai pas fait, car il indique quel est votre nom d'utilisateur et votre mot de passe.
la source
Je viens de rencontrer un cas où le répertoire .svn se trouve sur un serveur nfs sur une autre machine et où le client nfs n'exécutait pas le service de verrouillage de fichiers (
lockd
).Cela a disparu une fois
lockd
démarré sur l'hôte client nfs.Il semble que subversion puisse produire un meilleur message d'erreur lorsqu'il a du mal à verrouiller les fichiers. C'était subversion 1.10.0
la source
J'ai effectué une nouvelle extraction à partir du même projet vers un emplacement différent, puis copié le dossier .svn à partir de celui-ci et remplacé par mon ancien dossier .svn. Après cela, appelé la fonction de mise à jour svn et tout a été correctement synchronisé à jour.
la source
Supprimez le dossier .svn présent sur votre ordinateur local. Appuyez sur l'icône Windows et tapez .svn, supprimez tout le dossier. Ça a marché pour moi.
la source