Ich habe ein Remote-Bare-Repository (kein Arbeitsverzeichnis), das Install-Tears erstellt. Funktioniert gut. Aber jetzt möchte ich nur noch die geänderten Dateien erstellen. Ich habe es so versucht:git Archiv von geänderten Dateien auf bare Repos
git archive --format=tar --prefix='/' HEAD `git diff V1.02 --name-only` | gzip -9 > ~/tars/update-v1.02-`git describe master --tags`.tar.gz
Das funktioniert gut mit meinem lokalen Repository. Es erstellt ein tar mit den Dateien von der getaggten Version V1.02 bis zum letzten Commit. Aber es funktioniert nicht mit bloßen Repos. Gibt es eine andere Lösung?
Hey Jacob, danke für deine Antwort. Schade, dass ich keine Benachrichtigung von stackoverflow bekommen habe. –
Wenn ich Ihren Befehl versuche, gibt mir git folgendes: 'fatal: mehrdeutiges Argument 'V1.02': unbekannte Revision oder Pfad nicht im Arbeitsbaum. Verwenden Sie '-', um Pfade von Revisionen zu trennen. Wo muss ich das '-' setzen? 'git archive --format = tar --prefix = '/' Master' git diff V1.02 - Master - Nur-Name' | gzip -9> ../tar.tar.gz fatal: schlechte Revision 'V1.02'' –
'-', wenn überhaupt, geht nach allen Nicht-Pfad-Optionen. In Ihrem Beispiel würden Sie es überhaupt nicht verwenden, da Sie mit 'git diff' keine Form der Pfadbegrenzung verwenden. –