3 Stimmen

Verfolgung eines remotes/p4/master-Zweigs in Git

Ich klone ein Projektarchiv, das zuerst mit git-p4 erstellt wurde. git-p4 verwendet einen "remotes/p4/master"-Zweig, den ich gerne verfolgen möchte. Wie kann ich Git, das dieses Projektarchiv klont, anweisen, auch remotes/p4/master zu verfolgen? Auf diese Weise wäre ich in der Lage, "origin/remotes/p4/master" oder so etwas auszuchecken.

3voto

araqnid Punkte 116680

Sie können die Abrufeigenschaften so anpassen, dass diese Referenzen ebenfalls gespiegelt werden, allerdings nicht als Teil eines Standardklons.

Also eine Sequenz wie:

git clone ~/p4/git/services/info-service.git
cd info-service
git config --add remote.origin.fetch +refs/remotes/p4/*:refs/remotes/origin/p4/*
git fetch origin

Damit wird Folgendes abgerufen refs/remotes/p4/release/1.1 zum Beispiel in info-service.git zu sein refs/remotes/origin/p4/release/1.1 in Ihrem Klon, und Sie könnten einen darauf basierenden Zweig erstellen mit git checkout -b r1.1-fixes origin/p4/release/1.1

In meinen Perforce-Replika-Repos erstelle ich tatsächliche Zweige, um alle p4-Remote-Zweige zu spiegeln, vor allem, um die oben genannten Schritte zu vermeiden. Das gibt mir auch die Möglichkeit, die Benennung von p4-Pfadpräfixen zu Git-Zweignamen zu korrigieren (also p4/main wird master , p4/release/1.1 wird r1.1 usw.). Ich verwende meine eigene p4-zu-Git-Replikation, aber Sie könnten dasselbe tun, indem Sie die p4-Fernreferenzen mit git for-each-ref und das Setzen lokaler Zweigstellen mit git update-ref .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X