2011-12-11 20 views
14

Załóżmy zdalnego repozytorium SVN posiada tę strukturę:Pomiń katalog w SVN zamówienia? (Częściowe kasa)

/project 
     /src 
     /bulk 

teraz z jakiegoś powodu mam już kopię bulk (zakłada się niezmienny lub rzadko zmienia) w innym miejscu na moim komputerze. Czy mogę jakoś zamówić nową kopię repozytorium, ale wstępnie dostarczyć katalog bulk, aby nie został pobrany ponownie?

Aby wyjaśnić, ten hipotetyczny proces powinien z pewnością sprawdzić sumy kontrolne plików w katalogu bulk i zaktualizować te pliki, które nie są poprawne, tak, że ostatecznie będę miał pełne, stałe zamówienie. Chcę po prostu skrócić poprzednie pobieranie plików, które już mam dosłownie.

+0

Nie sądzę, ale co ważniejsze, że prowadzi to do problemu, że repozytorium svn nie jest już autorytatywne. Poza tym, co z innymi (włączając w to twoją przyszłą jaźń - na innej maszynie), którzy nie mają teraz magicznej masy. Czym dokładnie jest luzem? Dane, biblioteka osób trzecich może nam pomóc skierować Cię do najlepszej praktyki. –

+0

@SteveRobillard: Magiczna część jest częścią repozytorium (powiedzmy, że jest to zbiór plików sountrack). Po prostu już je pobrałem i chcę to wykorzystać. Cieszę się, że sumy kontrolne są weryfikowane i to wszystko! –

+0

Podobny do https://stackoverflow.com/questions/192824/svn-checkout-ignore-folder –

Odpowiedz

26
  1. Zamówienie/projekt, określające głębokość "pustą".
  2. Aktualizacja/projekt/src określająca nieskończoną głębokość.
  3. Skopiuj bieżącą masową kopię roboczą do kopii roboczej katalogu projektu.

np.

svn checkout --depth empty http://svnserver/project/ project 
svn update --set-depth infinity project/src 
// copy your current /bulk into /project 

Uwaga - ten wykorzystuje funkcję sparse directories wprowadzonego w Subversion 1.5.

+2

Czy możesz przeliterować to nieco dalej dla nowicjusza SVN? :-) –

+0

Jeśli '/ bulk' się nie zmienia i nie zamierzasz tego sprawdzać z repozytorium, nie ma potrzeby, aby był w repozytorium. Po prostu przechowuj swój folder '/ src' w repozytorium. – bdares

+0

@bdares: To nie jest moje repozytorium! :-) –

0

Ostatnim razem, gdy musiałem to zrobić, miałem ogromną liczbę plików demonstracyjnych w katalogu i po prostu przeniosłem je do nowego katalogu z trunk.

Możesz rozważyć wykonanie czegoś podobnego i dodaniedo svn:ignore, jeśli potrzebujesz , aby znaleźć się w tym samym katalogu.

+0

To znaczy, że powinienem odłączyć" bulk "od kontroli wersji i po prostu użyć mojej lokalnej kopii dla mojej lokalnej maszyny? Domyślam się, że to obejście, chociaż naprawdę miałem nadzieję, że będę mógł "zalać" moje kasy lokalnymi plikami. –

+0

Nie, "bulk" pozostanie w kontroli wersji, ale nie w "trunk". W ten sposób będziesz w stanie uniknąć dużego check-outu. –

1

instrukcje dotyczące korzystania TortoiseSVN 1.7 i nowsze:

  1. "SVN Checkout" do/projektu, określając "Kasa Depth" jako "tylko w tym punkcie"
  2. "SVN Checkout" do/projekt/trunk, określając "głębokość Checkout" jako "w pełni rekurencyjny"
Powiązane problemy