Ich klonen ein Repo, das zuerst von Git-P4 generiert wurde. git-p4 benutzt einen 'remotes/p4/master'-Zweig, den ich verfolgen möchte. Wie kann ich git, welches das Repo klont, mitteilen, auch remotes/p4/master zu verfolgen? Auf diese Weise könnte ich "Herkunft/Fernbedienungen/p4/Master" oder so etwas überprüfen.Verfolgen eines Remotes/p4/Master-Zweigs in Git
Antwort
Sie können die Abrufeigenschaften so anpassen, dass sie auch diese Referenzen spiegeln, jedoch nicht als Teil eines Standardklons.
So 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
Dies holen refs/remotes/p4/release/1.1
zum Beispiel in info-service.git
refs/remotes/origin/p4/release/1.1
in Ihrem Klon zu sein, und man konnte einen Zweig basiert auf mit git checkout -b r1.1-fixes origin/p4/release/1.1
schaffen alle gesagt haben, dass In meinen Perforce-Replik-Repos erzeuge ich echte Zweige, um alle p4-Remote-Zweige zu spiegeln, vor allem, um zu vermeiden, dass ich alle oben genannten Schritte ausführen muss. Es gibt mir auch eine Chance, die Namensgebung von p4 Pfad Präfixen zu git Zweig Namen (so p4/main
wird master
, p4/release/1.1
wird r1.1
etc.) zu beheben. Ich benutze meine eigene p4-to-git-Replikation, aber Sie könnten viel Ähnliches tun, indem Sie die p4-Remote-Refs mit git for-each-ref
überschleifen und lokale Zweige mit git update-ref
setzen.
Hi araqnid, ist Ihre p4-> Git Replikation öffentlich verfügbar? Ich würde es gerne mit git-p4 vergleichen. –