Próbuję utworzyć plik tar dla wdrożenia jakiegoś kodu, ale nie chcę, aby wszystkie pliki .svn były wdrażane.W jaki sposób zapisać w katalogu svn i odfiltrować wszystkie pliki .svn?
Jak mogę je odfiltrować? Są w wielu katalogach ...
Próbuję utworzyć plik tar dla wdrożenia jakiegoś kodu, ale nie chcę, aby wszystkie pliki .svn były wdrażane.W jaki sposób zapisać w katalogu svn i odfiltrować wszystkie pliki .svn?
Jak mogę je odfiltrować? Są w wielu katalogach ...
tar --exclude=.svn -z -c -v -f mytarball.tar.gz mydir/
użyj polecenia svn export
, aby utworzyć czystą kopię lokalnej piaskownicy.
http://svnbook.red-bean.com/en/1.0/re10.html
svn export [-r REV] URL [PATH]
svn export PATH1 PATH2
można użyć funkcji svn Eksportuj, aby uzyskać czystą wersję plików bez .svn folderów.
Zrób to w innym miejscu niż kopia robocza.
Approach (1)
Rozwijając na odpowiedź w tym wątku, który cytuje rozwiązanie SVN książki (która jest SVN-centric), daję ten przykład:
c:>svn -r eksportu rrev https:/A_SERVER/svn/A_REPO/A_PROJECT/c: \ tmp \ arepo - aproject - rrev \
c: \ tmp \ arepo - aproject - rrev>smoły zcvf arepo - aproject --rrev.tar.gz *
Approach (2)
Istnieje również inny długi i pouczający wątek znaleźć na stronie:
How can I get `find` to ignore .svn directories?
to inna dyskusja uderza mnie przede wszystkim znaleźć-centric i tar-centric. (Oba interesujące tematy same w sobie)
Znalazłem najlepiej używać rozwiązania (1) powyżej. Dla mnie.
ja przeważnie mam inne "Find - od - przefiltrowanej-STDIN drogi" do pracy, ale nie konsekwentnie podane złożoności i kaprysy przy wszystkich DOS, Linux, Find-warianty, xargs itp
zgodzić .. Na świeżym kasie (1) jest najlepszym sposobem. Ale powiedzmy, że jest to po "kompilacji" i chcesz spakować rzeczy w katalogu, w którym uruchomiłeś kroki kompilacji, (2) jest dobrym rozwiązaniem (ponieważ niektóre wygenerowane lub skompilowane treści nie są w svn) .. – optimistAk
można użyć tar --exclude-vcs.
Im przy użyciu folderów kopii zapasowych:
Z instrukcji:
„- -exclude-vcs ' Wyklucz pliki i di reektory używane przez następujące systemy kontroli wersji: "CVS", "RCS", "SCCS", "SVN", "Arch", "Bazaar", "Mercurial" i "Darcs".
Więcej informacji http://www.gnu.org/software/tar/manual/html_section/exclude.html
Przynajmniej na Cygwin, pliki SVN są nadal dołączone podczas używania tej flagi –
Jest obecny tylko w tar 1.28 i wyżej. –
Możesz również używaj "--exclude-vcs" – mjlee
Bardzo ładnie, spakowałem paczkę z 91 do 54 MB :) –
Zauważ, że --exclude-vcs występuje tylko w tar 1.28 i wyżej. –