2010-08-06 6 views
6

Ich habe einen Ordner in ClearCase, der eine große Liste von Berichten enthält.
Ich habe alle Berichte überprüft, weil ich eine umfassende Änderung vornehmen muss.
Ich habe einen Satz der Berichte geändert und möchte diesen Satz jetzt bereitstellen.Suche nach geänderten Dateien in einem ClearCase-Ordner

Ich hätte wahrscheinlich die Report-Dateien einzeln überprüfen und dann jeden nach dem Beenden bereitstellen sollen.
Aber da ich das nicht getan habe, gibt es eine Möglichkeit, den ClearCase-Ordner zu überprüfen, der die Liste ausgecheckter Berichte enthält, um zu sehen, welche sich geändert haben und welche nicht?

Antwort

6

Sie könnten Cleartool für eine diff mit der vorherigen Version fragen:

cleartool lsco -r -cvi -fmt "diff -options \"-hea\" -pred \"%n\"\n" | cleartool | grep ">>>" 

, dass Sie die Liste der derzeit abgemeldeten modifizierte Dateien geben würde.

Hinweis: Um die ‚-r‘ Option entfernen, wenn Sie nur die Check-out-Dateien des aktuellen Verzeichnisses wollen (und nicht seine Unterverzeichnisse)

+0

@VonC .... interessant ... danke. Ich kann jedoch nicht sagen, wo ich in dem obigen Befehl den Pfad zu meiner Ansicht einfügen würde. Ich habe den Fehler "Die Sicht für '.' Konnte nicht ermittelt: kein ClearCase-Objekt" – MikeTWebb

+0

@Mike: Sie müssen sich in dem Verzeichnis befinden, in dem sich Ihre Berichte befinden. (das heißt, du wirst in deiner Sicht sein). Sie können mit der rechten Maustaste auf den ClearCase-Ordner klicken und nach "Elementeigenschaften" fragen, um den vollständigen Pfad dieses Ordners in einer DOS-Sitzung zu kopieren. – VonC

+0

@VonC ... genial. Ich versuche es und gebe eine Antwort .... OK, ich habe es versucht und es sieht so aus, als ob es eine Liste mit allen ausgecheckten Berichten zurückgegeben hat ... nicht nur die, die sich geändert haben. Ideen? Ah .... Ich habe gerade meinen Fehler entdeckt. Ich habe den Grep-Teil der Befehlszeile entfernt. Ich bin jetzt exexuting cleartool lsco -r-cvi-fmt "diff-Optionen" - hea \ "-pred \"% n \ "\ n" | Cleartool und es hat super funktioniert !!! – MikeTWebb

1

können Sie einen zweiten Blick mit einem identischen Konfiguration spec eingerichtet als die Ansicht mit den ausgecheckten Dateien. Sobald Sie die zweite Ansicht eingerichtet haben, können Sie dasselbe Verzeichnis in jeder Ansicht mit einem Unterschiedswerkzeug (wie WinDiff) vergleichen. Dadurch werden alle Dateien aufgelistet, die geändert wurden.

Es ist nicht in ClearCase nativ, aber es sollte die Ergebnisse geben, die Sie suchen.

+0

@ Brainimus ... danke! Müsste ich die zweite Ansicht vor dem Auschecken der Dateien aus dem ursprünglichen Verzeichnis einrichten? – MikeTWebb

+0

@ Brainimus .... Ich implementierte Ihre Lösung. Es funktionierte gut – MikeTWebb

+1

@Mike: Wenn Sie das tun, vergessen Sie nicht, 2 * dynamische * Ansichten zu verwenden, viel einfacher und schneller für diese Art einzurichten, wenn Sie (Datei Beratung) verwenden – VonC

0

Ich fand auch eine Lösung. Ich habe meinen ClearCase-Ordner ausgewählt und auf "Checkouts suchen" geklickt. Dies zeigte meine riesige Liste von Berichtsdateien, die ausgecheckt wurden. Ich habe dann alle ausgewählt und "Check In" gewählt. Ich habe die Option "Check in, wenn identisch mit der vorherigen Version" deaktiviert. Ich habe dann "OK" gewählt, um einzuchecken. Alle eingecheckten Modifeid-Dateien und die nicht modifizierten Dateien sind ausgecheckt. Dies gab mir mein Delta von modifizierten Dateien gegenüber nicht modifizierten Dateien.

3

In ClearCase (oder Explorer, wenn die Integration aktiviert ist), klicken Sie mit der rechten Maustaste auf die Basis der Struktur und wählen Sie "Find Modified Files". Dies wird eine Liste aller Dateien zurückgeben, die modifiziert wurden und die Teil des Repos sind (d. H. Es wird keine Liste von privaten Dateien zurückgegeben).

Wenn Sie alle Dateien wissen - ausgecheckt, geändert und privat - der einzige Weg, ich kenne ist Cleartool zu verwenden, aus der Ansicht:

cleartool ls -r 

Wenn Sie mehr (oder weniger) Informationen über die Dateien finden Sie in den Dokumenten für die Option -fmt (die nicht mit ls funktioniert, aber mit describe funktioniert), und Sie können einen Befehl erstellen, der Ihnen genau das liefert, was Sie wollen (es wird etwas experimentieren müssen) bis du den Dreh raus hast).

HINWEIS: "Find Modified Files" ist nur verfügbar in der GUI von der Basis der View-Struktur; Anderswo ist Ihre einzige Option "Finde ausgecheckte Dateien" (verwirrend, um es gelinde auszudrücken).