Insolubles Git erreur: La suite sans traces de travail de l'arborescence de fichiers serait écrasé par la caisse

Je suis en utilisant Git seul pour mon logiciel local de projet dans Visual Studio 2010. Récemment, j'ai créé une nouvelle branche pour faire un plus grand refactoring de l'une des fenêtres de dialogue. J'ai fait les modifications suivantes:

  • Renommer Form1 pour Form1a (y compris tous les fichiers)
  • Ajouter de nouveaux Form1

J'ai vérifié ce changement dans la branche, dire la forme-refactoring. Il est intéressant de noter, Git n'a pas remarqué que j'ai renommé le fichier Form1.cs dans Form1a.cs et a créé une nouvelle marque, totalement différent Form1.cs, mais au lieu de cela, il a remarqué une nouvelle Form1a.cs fichier et trouvé beaucoup de différences entre l'ancienne et la nouvelle Form1.cs fichiers. Ce sera bien sûr conduire à totalement garbaged des diffs, mais je n'aime pas dans ce cas, tant que tous les fichiers sont correctement pris en charge par la fin.

Puis je remis à maître de faire quelques autres petits changements. Rien contradictoires. Jusqu'à présent, tout a bien fonctionné.

Aujourd'hui, je voulais revenir à ma direction de la forme-refactoring pour poursuivre ce travail. Mais tout ce que j'obtiens est le suivant message:

git.exe checkout    form-refactoring

Aborting
error: The following untracked working tree files would be overwritten by checkout:
Form1.Designer.cs
Please move or remove them before you can switch branches.

Ce qui est censé être? Le fichier n'est pas sans traces. Ni dans la branche master, ni dans la forme-refactoring de la branche. Il fait partie des deux branches, mais on n'est pas un descendant de l'autre. Qu'arriverait-il si je le supprimer, c'est parti pour de bon, alors? Je n'ai pas confiance Git pour ramener le de fichier correct si je supprime quelque chose maintenant. Je n'ai pas jouer avec n'importe quel fichier à l'extérieur de mon mentionné Git opérations, alors pourquoi devrais-je jouer avec n'importe quel fichier de continuer à utiliser Git opérations de maintenant? Git il le rompit, Git est censé s'occuper de ça maintenant!

Droit maintenant, je ne peux pas continuer avec mon travail parce que je ne peut pas passer les branches. Est-il une solution pour cela?

Git version 1.7.6, TortoiseGit est 1.7.3.

  • Auriez-vous un modèle qui correspond à Form1.Le concepteur.cs dans votre .gitignore ou de tout autre ignorer les configurations?
  • Ce fichier a une coche verte dans l'Explorateur et il a une histoire aussi bien. Je suppose qu'il n'est pas ignoré. Il existe également d'autres Forme.Le concepteur.cs fichiers dans mon projet qui ne cause pas de problèmes. Et ce n'est pas le premier dépôt Git que j'ai créé avec VS2010, jusqu'à aujourd'hui même un peu d'efforts dans la ramification a bien fonctionné.
  • S'il vous plaît vérifiez que vous ignorez les filtres pour voir si ils ont changé pour que les pensions ou de la branche. Vous pouvez toujours voir l'état et de l'histoire sur un fichier s'il a été ajouté, avant de l'ignorer filtre. Tout ce qui utilise git status sera toujours le signaler (comme votre explorateur coches) Cela peut provoquer l'erreur, vous êtes en indiquant si vraiment il y a des changements dans le fichier parce que Git ignore désormais que lors de l'exécution de la commande Git status. Cependant Git va encore connaître ça a changé quand essayer de faire un checkout et vous donner cette erreur.
  • Un Double contrôle. Aucun problème trouvé. J'ai trouvé une solution de contournement hack pour l'instant d'accéder à mes données. J'ai cloné le dépôt dans un autre répertoire, puis passer à la succursale de l'il (elle a effectivement travaillé) et utilisé BeyondCompare manuellement(!) commutateur de mon repo et le répertoire de travail par la copie de certains (pas tous) des fichiers .git et toutes les différences dans le répertoire de travail. Jusqu'à maintenant, git status œuvres raisonnable dans ma version piratée... - (Juste au cas où vous êtes inquiet: j'ai fait une sauvegarde de tout cela avant d'essayer quelque astuce à partir de cette page.)
InformationsquelleAutor ygoe | 2012-01-12