2008-11-03 11 views

Odpowiedz

53

Najlepszym sposobem na to jest użycie 'convert' extension. Będziesz korzystać z rtęcią i oba źródła i typ docelowy, a następnie użyć --filemap z wpisami jak:

exclude path/you/do/not/want 
rename path/you/do/want . 

zmiany nazwy jest konieczne tylko, jeśli chcesz wziąć części jesteś przechowywania i przenieść je „wyższą” w hierarchia katalogów.

+4

To przyniesie pracę: zmień nazwę ścieżki/ty/zrób/chcesz/ To spowoduje: zmień nazwę ścieżki/ty/do/chcesz. Dotyczy to tylko przeniesienia ścieżki do katalogu głównego. –

+0

Rzeczywiście, dzięki, Nathan. –

+2

http://mercurial.selenic.com/wiki/ConvertExtension – Julian

-4

Po prostu sklonuj i usuń niechciane elementy z każdej kopii.

+1

to nie pomoże. Każde zamknięcie ma wciąż pełną historię, więc "zbyt dużo rzeczy" zawsze znajdzie się w katalogu ".hg" zajmującym przestrzeń. –

+10

ah, chcesz stalinowskiej rewizjonistycznej formy kontroli wersji. ;) http://en.wikipedia.org/wiki/Historical_revisionism_(negationism) –

+0

@ Ry4an Ale czy klony nie są skutecznymi kopiami siebie nawzajem? Czyli tak, historia zmian usuniętych elementów będzie w obu repozytoriach, ale tylko raz przechowywana na dysku? Więc jeśli sklonowałbym repozytorium z kilkoma obrotami do plików A - D, a następnie usunięto by dać mi repozytorium A/B i C/D, przechowywałbym tylko jedną kopię wszystkich obrotów AD wraz z dodatkowym zestawem zmian w każdy z nich oznaczający C/D usunięto w jednym i A/B w drugim. Dobrze? –

0

znalazłem szczegółowy przewodnik here:

utworzyć mapę plików new-repo.filemap takich jak

include vendor/FooBackend 
rename vendor/FooBackend . 

Utwórz inny plik mapy rewrite-old-repo.filemap:

exclude vendor/FooBackend 

utworzyć nowe repozytorium:

hg convert /path/to/current/repo /path/to/new/repo --filemap new-repo.filemap 

Nowe repozytorium zostało zakończone. Katalog jest pusty, ale hg update przyspieszy jego zawartość.

Tworzenie zmodyfikowanego repozytorium

hg convert /path/to/current/repo /path/to/rewritten/repo --filemap rewrite-old-repo.filemap 
Powiązane problemy