Czy istnieje prosty sposób na eksportowanie/archiwizowanie tylko zmienionych plików z danego zatwierdzenia lub serii zatwierdzeń w git? Nie mogę znaleźć wyraźnych instrukcji, aby to zrobić (i jestem nowy w Linuksie/Git).Eksportowanie/archiwizowanie zmienionych plików tylko w Git
Używam programu msysgit i na ogół wdrażam całe repozytoria, ale w wielu przypadkach jest o wiele wydajniej wdrażać małe poprawki po kilka plików jednocześnie.
Pchanie/ciągnięcie/instalowanie gita na zdalnych serwerach nie jest tak naprawdę opcją, ponieważ mój poziom dostępu jest różny w zależności od projektu i klienta.
Czy istnieje prosta droga do (rough guess):
pipe 'diff --names-only' to 'git-archive'?
Dla potomności ta odmienna technika mogłaby wyglądać następująco: 'git diff - only-only [diff options] | xargs tar -czf files.tar.gz' – jason
Z 'xargs', masz inny problem, ponieważ' xargs' będzie uruchamiał 'tar' więcej niż raz, jeśli istnieje zbyt wiele plików, aby umieścić je wszystkie w jednym wierszu poleceń. Spowoduje to, że 'tar' utworzy nowy plik .tar, zastępując poprzedni, więc będzie zawierał tylko pliki ostatniej partii. –
Dzięki za wyjaśnienie składni! Potrzebne są backticks :) Działa to doskonale w linii poleceń programu bash, które pochodzi z msysgit, z wyjątkiem sytuacji, gdy w nazwach plików są spacje (okna ...). Czy istnieje sposób, aby uciec z nich automatycznie? – AKS