2009-04-28 4 views
3

Я клонирую репо, которое было впервые создано git-p4. В git-p4 используется ветвь «remotes/p4/master», которую я хотел бы отслеживать. Как сообщить git, который клонирует это репо, для отслеживания пультов/p4/master? Таким образом, я смог бы проверить «происхождение/remotes/p4/master» или что-то еще.Отслеживание пульта дистанционного управления/p4/главная ветвь в git

ответ

3

Вы можете настроить свойства выборки, чтобы отразить эти ссылки, хотя и не как часть стандартного клона.

Так последовательность, как:

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.

+3

Привет, araqnid, доступна ли ваша репликация p4-> git публично? Я бы хотел сравнить его с git-p4. –