git p4 clone не имеет файлов

Я перехожу из Perforce в git, и в процессе я пытаюсь получить правильную структуру файлов.

Текущая структура исполнения выглядит примерно так:

//depot
    /android
        /main
        /other_branches
        /core_library
            /main
            /other_branches

и я снимаю что-то вроде этого в git:

/android
/core_library

Я настроил свой клиентский вид View следующим образом (позже я буду беспокоиться о ветвях):

//depot/android/main/... //p4-git/android/...
//depot/android/core_library/main/... //p4-git/core_library/...

Когда я запускаю следующее, появляется полная история коммитов, но нет файлов.

set P4CLIENT=p4-git
git p4 clone --use-client-spec //p4-git/@all

1 ответ

Решение

Проблема в этой строке:

git p4 clone --use-client-spec //p4-git/@all

Здесь вы проходите путь клиента (//p4-git), но git-p4 ожидает путь депо. Это вызывает проблемы позже, когда он пытается сопоставить пути хранилища Perforce с путями Git. Попробуйте запустить

git p4 clone --use-client-spec //depot/android/main/@all

вместо.

Имейте в виду, что если вы укажете --use-client-specgit-p4 автоматически использует спецификацию вашего клиента, какой бы он ни был. Он также запомнит этот выбор и будет использовать его для будущих команд git-p4. Вероятно, это хорошая идея:

  • создать выделенный клиент для работы git-p4
  • удостовериться P4CLIENT устанавливается на этот клиент всякий раз, когда вы используете git-p4
  • не меняйте вид вашего клиента git-p4
Другие вопросы по тегам