Wie kann ich ediff (emacs diff) als Diff / Merge-Tool in Windows ClearCase verwenden?

8

Ich bin gezwungen, ClearCase (Windows-Version) bei der Arbeit zu verwenden, und ich möchte Emacs ediff als Diff- und Merge-Tool verwenden. Das Problem mit der ClearCase-Map-Datei ist, dass sie EXE-Dateien benötigt. Ich habe versucht, eine Batch-Datei anzugeben, die ediff aufruft und nicht funktioniert.

Ich möchte kein C / C ++ - Programm schreiben (es ist mehr als 10 Jahre her, seit ich irgendetwas in C für Win32 codiert habe), dass ediff mit den richtigen Argumenten aufrufen wird. Gibt es einen einfacheren Weg?

Siehe auch:

Irgendein Weg zu Verwenden Sie ein benutzerdefiniertes Diff-Tool mit cleartool / clearcase?

    
Eugene Morozov 18.03.2009, 12:47
quelle

2 Antworten

6

Wie in diesem Artikel erwähnt SO Frage , mit der Kartendatei können Sie ein externes Diff-Tool aufrufen.

Unter Windows sollten Sie zuerst E-Mails im Ediff-Modus aufrufen:

%Vor%

oder

%Vor%

(sollte eine neue Instanz von XEmacs ediff aufrufen)

Wenn dies funktioniert, können Sie eine .bat -Datei schreiben, die von der Map-Datei aufgerufen wird, und die entsprechende Befehlszeile " emacs ediff " erstellen.

Etwas entlang der Linien von:

%Vor%

Wenn die Kartendatei beim Aufruf einer .bat-Datei nicht leicht ist, generieren Sie eine .exe von Ihrem .bat .

Ich habe einige Tests gemacht und es stellt sich heraus:

  • "Vergleiche mit der vorherigen Version" ruft tatsächlich auf:

    cleartool diff -graphical -pred myFile

  • ruft die .bat über einen cmd.exe-Aufruf nicht auf

    c:\Program Files\Rational\ClearCase\lib\mgrs\map

    text_file_delta xcompare "c:\WINDOWS\system32\cmd.exe /c c:\cc\test.bat"

    cleartool: Error: Operation "xcompare" unavailable for manager "text_file_delta" (Operation pathname was: "C:\Program Files\Rational\ClearCase\lib\mgrs\"c:\WINDOWS\system32\cmd.exe /c c:\cc\test.bat"")

  • Die Umwandlung der .bat in .exe funktioniert auch

  • arg2 ( %2 ) und arg4 ( %4 ) suchen Sie, wobei arg5 ( %5 ) der Name der temporären Datei ist, die für den Inhalt der vorherigen Version erstellt wurde (für Snapshot) Ansicht, die nicht auf den erweiterten Pfadnamen zugreifen kann)

Der folgende bat (in exe umgewandelt) funktioniert also nur von der Befehlszeile (nicht vom ClearCase Explorer: DrWatson):

%Vor%

Sie sollten es an Xemacs anpassen können, aber Alex Vorschlag ( Arbeiten mit Clearcase von Emacs ) könnte eine weitere praktischere Lösung sein.

    
VonC 18.03.2009, 13:08
quelle
1

Sie können das Clearcase-Paket wie hier beschrieben hier

verwenden     
Alex Ott 18.03.2009 14:20
quelle