Wenn ich mit Gerrit (Code Review) arbeite, muss ich häufig eine Kopie eines bestimmten Patch-Sets zu Test- oder Validierungszwecken erhalten. Der naheliegendste und einfachste Weg ist, das Archiv oder die Patch-Datei über die Gerrit-Weboberfläche herunterzuladen und manuell auf meine lokale Quelle anzuwenden.
Während die obigen Schritte ziemlich einfach sind und meine Anforderungen erfüllen, möchte ich in der besten Welt, dass das Patch-Set als Commit in meinem lokalen Git angezeigt wird.
Ich habe mich umgesehen und keine Lösung gefunden. Ich habe einige spärliche Informationen gefunden, die nach dem Zusammenstellen die folgende Lösung ergeben.
Angenommen, Sie möchten das Patch-Set 2 der Gerrit-Änderung 1222 ziehen:
Finden Sie die Remote-Refs, an denen wir interessiert sind:
$ git ls-remote | grep 1220
From http://something.com:8081/MyProject
e2e0212a59240ac5cd7c11220c35542523f44b59 refs/changes/13/713/1
b8c4dceea5eaf1bad711b0ea6938c80ec932726a refs/changes/20/1220/1
6f20c182ec7f54a2aa9e8f6188a0eef1b0790df4 refs/changes/20/1220/2
ed94a98386d224ce3d86004ce99f61220905a077 refs/changes/22/1222/1
Ziehen Sie die Refs:
git pull origin refs/changes/20/1220/2
Dadurch wird ein Git-Festschreibungspunkt erstellt, den Sie eventuell neu erstellen können:
git rebase