Я клонирую репо, которое было впервые создано git-p4. В git-p4 используется ветвь «remotes/p4/master», которую я хотел бы отслеживать. Как сообщить git, который клонирует это репо, для отслеживания пультов/p4/master? Таким образом, я смог бы проверить «происхождение/remotes/p4/master» или что-то еще.Отслеживание пульта дистанционного управления/p4/главная ветвь в git
ответ
Вы можете настроить свойства выборки, чтобы отразить эти ссылки, хотя и не как часть стандартного клона.
Так последовательность, как:
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
Это будет получать refs/remotes/p4/release/1.1
, например, в info-service.git
быть refs/remotes/origin/p4/release/1.1
в вашем клоне, и вы могли бы создать филиал на его основе с git checkout -b r1.1-fixes origin/p4/release/1.1
Сказав все, что , в моем репозитории реплики Perforce я создаю фактические ветки, чтобы отразить все удаленные ветви p4, во многом, чтобы избежать необходимости проходить все вышеперечисленное. Это также дает мне возможность исправить имена из префиксов пути p4 к именам ветвей git (так что p4/main
становится master
, p4/release/1.1
становится r1.1
и т. Д.). Я использую собственную репликацию p4-to-git, но вы можете сделать то же самое, перейдя через пустые ссылки ref4 с помощью git for-each-ref
и установив локальные ветви с помощью git update-ref
.
Привет, araqnid, доступна ли ваша репликация p4-> git публично? Я бы хотел сравнить его с git-p4. –