2010-11-11 3 views
13

Ich muss eine Reihe von Dateien aufteilen und suche nach Optionen, um den vollständigen Dateiverlauf in den abgespaltenen Dateien zu behalten.Dateien in Mercurial aufteilen und Historie auf beiden Seiten speichern

Hintergrund ...

Ich habe ein Projekt geerbt viele Oracle PL/SQL-Pakete mit der Paket-Spezifikation und dem Gehäusekörper all gespeichert in einer einzigen „.sql“ Datei enthält. Ich würde es vorziehen, die Paketspezifikation und den Paketkörper in separaten Dateien zu haben.

dh

Beginnend mit: myfile.sql

würde Ich mag diese Datei teilen, so dass das erste Bit (Package-Spezifikation) geht in:

myfile.pks 

und das letzte Bit (Paket Körper) geht in:

myfile.pkb 

Ich habe keine Probleme, die Separa selbst, aber ich fragte mich, ob jemand irgendwelche Ideen hatte, wie ich die Dateihistorie von myfile.sql sowohl in myfile.pks als auch in myfile.pkb behalten konnte.

Antwort

17

Splitting-Dateien können von hg rename und hg copy modelliert werden, um die Geschichte zu behalten:

hg copy myfile.sql myfile.pks 
hg rename myfile.sql myfile.pkb 

Das Bearbeiten der * .pks und * .pkb Datei, um die Hälfte zu entfernen, die dort nicht hingehört.

Nach dem Bearbeiten alles festschreiben.

Um die Kopien zu sehen und umbenennt Sie git Format von diffs verwenden:

hg diff -g 

Da dies sehr nützlich sein häufig als Standard in der .hgrc-Datei festgelegt durch Zugabe:

[diff] 
    git=1 
+0

Gute Sachen. Vielen Dank. –

0

IDEs machen es noch einfacher. Z.B. In IntelliJ wählen Sie die Datei und machen Sie Refactor>Copy.

Verwandte Themen