2009-01-02 2 views
5

Ich verwende VSS 2008 und Visual Studio 2008. Wenn meine Quelldateien eingecheckt sind, zeigt der VSS-Eigenschaftendialog sie als Typ "Unicode (UTF-8) ". Aber wenn ich einen aus Visual Studio heraus prüfe, dann vergleiche, es sagt "binäre Dateien unterscheiden sich". Sieht jemand anderes das? Habe ich irgendwo eine vermasselte Einstellung?VSS und Visual Studio 2008 "Binary Files Differ" Nachricht für Quelldateien

Danke, Andy

Update: Dank VonC für einen Einblick. In den meisten Fällen wird das Kontrollkästchen "Codierung der lokalen Datei automatisch erkennen" deaktiviert, obwohl es für mindestens eine Datei nicht hilfreich war. Ich habe auch keinen Weg gefunden, mehrere Dateien zu machen - sie müssen jeweils einzeln geändert werden. Ich bin immer noch auf der Suche nach einer umfassenderen Lösung.

Antwort

9

Von diesen old (2004) but may be still relevant article:

visueller Quelle sicher nicht immer Textdateitypen richtig erkennen. Beim Einchecken von Dateien mit dem Typ "" werden die Dateien als Binärdateien behandelt.

Also, wenn Sie zwei .sql-Dateien vergleichen, können Sie sehen "binary files differ" - und nichts mehr. (so behandelt vss Binärdateien).

The binary file differ

Die Lösung ist den Dateityp mit dem Kontextmenü Eigenschaften für die Datei in der Quelle sicher zu ändern. Ändern Sie den Typ in Text, Sie sollten den visuellen Vergleich durchführen können. Sie können auch auf die Option "Erweitert" klicken, wenn Sie die Datei einchecken, und die Auswahl dann manuell auf "text" ändern.

Um dies in Zukunft zu vermeiden - Sie können Dateitypeinstellungen unter dem Menü Optionen in Visual Source Safe hinzufügen, um das Standardverhalten für verschiedene Dateitypen dort festzulegen.

5

Anstatt das integrierte Vergleichstool für VSS zu verwenden, können Sie auch andere Anwendungen angeben. Das kann Ihnen helfen, das Binärproblem zu vermeiden. Als Beispiel, wenn Sie darüber hinaus verwenden passieren Vergleich (leider nicht kostenlos, aber es ist ein Ich habe Richtung):

  1. Zum Menü Extra
  2. Zum Menüpunkt Option
  3. Zum Gewohnheit Registerkarte Editoren
  4. ändern Betrieb auf "Datei Difference" Auswahl
  5. ändern Dateierweiterung:. *
  6. ändern Befehlszeile (einschließlich Anführungszeichen): "C: \ Program Files \ Beyond Compare 2 \ bc2.exe" % 1% 2
  7. Klicken Sie auf Hinzufügen Schaltfläche
  8. Klicken Sie auf OK Taste

Ich vermute, Sie die Befehlszeilenwerte oben mit einem anderen Programm auslagern können, haben aber es selbst nicht ausprobiert.

+0

genial! Danke für die Post! –

0

Ja, andere Antworten sind korrekt. Aber was kann getan werden, wenn die Datei von jemandem gesperrt ist und Sie Code-Merge durchführen müssen?Sie können keine Eigenschaften ändern, wenn sie deaktiviert sind:

Type is disabled as someone else checked out

Um Art Drop-Down für die Edition tun, um diesen einfachen Trick zu ermöglichen.

0) herunterladen und WinSpy ++ ausführen;

1) ziehen Sie den Mauszeiger auf die deaktivierte Dropdown-Liste;

2) Handle auf "Enabled" ändern;

3) Mit VSS können Sie Änderungen speichern.

WinSpy++ sequence

ps. VSS ist veraltet, wird aber immer noch häufig verwendet, um Unternehmen zu ändern.