2010-03-26 4 views
3

Nous commençons tout juste à apprendre et évaluer Mercurial, en raison d'un nombre croissant de fusions cauchemardesques, et de divers autres problèmes que nous avons eu récemment avec SVN.mercurial échoue avec un fichier nommé ---. Config - un moyen de contourner cela?

Un client veut que nous déployions une copie en direct de son site, que nous travaillions sur le référencement et que nous le repassions. Ils n'ont aucun contrôle de source du tout. Je pense que c'est un excellent projet avec Mercurial. Au lieu de le mettre dans notre SVN et d'exporter quand nous aurons fini, nous utiliserons Mercurial ... Mais tout de suite il semble que j'ai un problème :)

Ils ont un fichier appelé ---.config qui semble causer notre Mercurial à barf. Il ne peut tout simplement pas valider ce fichier. J'ai créé le repo et tout le reste, mais je ne peux pas obtenir ce fichier engagé.

Nous fonctionnons sous Windows 2008 x64 avec TortoiseHG 1.0.

Je suppose que je pourrais ignorer le fichier car il est peu probable que nous ayons besoin de travailler avec, mais encore - j'aimerais apprendre comment utiliser Mercurial un peu mieux. Y a-t-il un moyen de contourner ceci?

EDIT: voici le message d'erreur:

('commit', GetoptError('option ---.config not recognized', '-.config')) 

Cela se produit lorsque je clique sur le bouton "commit" dans TortoiseHG avec ce fichier sélectionné.

+1

Quel genre d'erreur obtenez-vous? Avec TortoiseHg 0.7 sur ma machine Windows XP tout fonctionne. –

+1

Avez-vous essayé de placer des guillemets autour du nom de fichier et d'ajouter ce fichier individuellement? –

+0

Pourriez-vous poster le "barf"? En ce moment, je ne sais même pas si elle meurt sur 'hg add' ou' hg ci' ... –

Répondre

2

Le problème est que TortoiseHg n'a pas correctement échappé les noms de fichiers lors de l'appel hg. Quand un nom de fichier commence par --, il faut faire très attention en l'utilisant sur les lignes de commande.

Je viens d'envoyer un correctif qui devrait devenir dans TortoiseHg 1.0.1, dont la sortie est prévue pour aujourd'hui.

+0

merci Martin! Je vous en suis reconnaissant. –

+0

Pas de problème, je suis content de l'avoir remarqué juste à temps pour la prochaine version! Je viens de le tester avec TortoiseHg 1.0.1 et il fonctionne maintenant comme il se doit. Si vous trouvez plus d'étrangeté, alors s'il vous plaît ouvrir les bugs sur le bug tracker TortoiseHg: http://bitbucket.org/tortoisehg/stable/issues/new/ –

3

Vous ne savez pas à propos de hg, mais la plupart des outils de ligne de commande traitent tout ce qui se passe après -- comme une non-option. Ceci est utile si vous avez un nom de fichier qui commence par -- ou un caractère générique qui récupère un tel fichier; Essayez de préfixer votre nom de fichier ou votre caractère générique avec --, par exemple, hg command -- *.config.

+0

Vous suggérez d'utiliser '--' ou vous dites que le début de' ---. Config' ressemble à '--' ... Je parie le premier. Clarifier? –

+0

aussi, je ne cherche pas vraiment à renommer le fichier, l'application l'utilise et ce changement dépasserait la portée de ce que je suis autorisé à faire sur ce projet. Je voudrais un moyen de dire à tortoiseHg, ou à la ligne de commande hg si je * dois *, de le commettre de toute façon. –