Question

J'ai un projet VS 2008 sous le contrôle de source TortoiseSVN. Je suis la seule personne qui l'utilise actuellement.

J'essayais de valider mes dernières modifications lorsque j'ai reçu le message & "Le fichier abc n'est plus à jour - veuillez mettre à jour &"; Lorsque j'essaie de mettre à jour le projet, j'obtiens tout un ensemble de conflits de fichiers (binaires et texte). Étant donné que je suis convaincu que ma copie de travail contient la version correcte des fichiers, j’essaie de résoudre les conflits en sélectionnant & Quot; mine & Quot; comme la version correcte. J'ai également essayé de marquer simplement chaque conflit de fichier comme résolu. Je suis alors capable de commettre.

Cependant, suite à cela, mon projet VS 2008 refuse de compiler et génère des centaines d’erreurs (tellement d’erreurs que VS 2008 indique qu’il ya trop d’erreurs à afficher!). Quelque chose à propos de la résolution de conflit de TortoiseSVN gâche complètement le projet, et il refuse de construire.

Est-ce que je peux forcer TortoiseSVN à simplement sauvegarder ma copie de travail dans le référentiel en tant que dernière révision, sans vérification des conflits?

Était-ce utile?

La solution

J'espère que vous avez fait une copie de sauvegarde de votre copie de travail avant la mise à jour, car sinon, il est fort probable que les conflits ont généré une énorme pile de commentaires >>>>>> theirs et <<<<<<< mine dans vos fichiers source.

Bien que je ne comprenne pas comment les conflits pourraient se produire en premier lieu (puisque vous êtes le seul à vous engager dans le référentiel), il existe un correctif possible.

Déplacez votre courant, " travail " copie de travail dans un endroit sûr. Découvrez le projet complètement frais. Copiez vos fichiers source sur la nouvelle copie de travail, puis validez les modifications résultantes.

Lorsque votre arborescence source est composée de plusieurs répertoires, il peut être fastidieux de copier chaque répertoire individuellement. Pour surmonter cela, vous pouvez exporter votre coffre-fort & Quot; travail & Quot; copie de travail en utilisant TortoiseSVN - > Exporter tout. Cela crée un répertoire sans tous les fichiers et répertoires .svn. Vous pouvez ensuite copier ce répertoire exporté sur la nouvelle copie de travail.

Autres conseils

J'ai constaté que les fichiers de projet Visual Studio sont assez sujets aux problèmes de fusion automatisée. Le problème est que le format des fichiers est si répétitif que l'utilitaire de fusion a beaucoup de mal à déterminer si une modification est un ajout ou une modification. De plus, certaines actions semblent provoquer une réorganisation des entrées dans le fichier projet de Visual Studio. Là encore, ces modifications sont relativement difficiles à gérer correctement par l’utilitaire de fusion.

Je compte sur l'une des deux options pour résoudre ce problème. Tout d'abord, vous pouvez ouvrir le fichier de projet dans le bloc-notes et le corriger à la main. Ils ne sont pas si complexes et vous pouvez généralement simplement suivre le modèle et vous assurer que rien n’est à leur place.

La deuxième approche consiste à inverser le fichier de projet, puis à ajouter et supprimer des fichiers et à apporter les modifications nécessaires dans Visual Studio.

Si les commits sont effectués tôt et souvent, aucune de ces tâches n’est trop complexe. Si des bombes sont larguées sur le dépôt, eh bien, c’est l’une des nombreuses raisons pour lesquelles s’engager tôt et souvent est une bonne idée. =)

Visual Studio et TortoiseSVN ne jouent pas bien ensemble. Une chose que j’ai remarquée, c’est que vous ne pouvez pas mettre à jour avec succès quoi que ce soit dans un répertoire de construction, car VS pense que & "Appartient à &"; les répertoires de construction, et est susceptible de supprimer votre dossier .svn (est-ce juste pour les constructions impliquant un nettoyage?)

Vous pouvez regarder un client Subversion qui s’intègre à Visual Studio. AnkhSVN me vient à l’esprit, mais http: //sharpsvn.open.collab. net / . Vous pouvez également envisager d’utiliser sharpsvn directement à partir d’une tâche antérieure ou postérieure à la création, ou d’une macro dans Visual Studio.

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