Ошибка отправки git2p4 из-за недопустимых символов в именах файлов

Наша команда использует git2p4 для локальной разработки в репозитории github, а затем отправляет ее в perforce. Например.

/home/workspace/src/ — код репозитория git (присутствуют изменения)

/home/workspace_p4git/src — локальная клиентская рабочая область, связанная с хранилищем в perforce.

Когда мы копируем исходный код репозитория git в локальный каталог perforce, изменения отображаются в git как неустановленные.

Теперь моя проблема:

В репозитории git есть файл с именем: abc %28def%29.extension.

Когда я 'git add -A'; он показывает меня-
переименовал: abc %2528def%2529.extension -> abc %28def%29.extension

Возможно, это связано с тем, что Perforce не допускает использование символа «%» в имени файла.

Затем я пытаюсь отправить свой код в репозиторий git - git p4 submit -M

Это не удается со следующей ошибкой:

Целевой файл содержит недопустимую управляющую последовательность [%xx].

команда не выполнена: p4integration -Dt "abc %2528def62%2529.extension" "abc %28def%29.extension"

Есть ли у кого-нибудь предложения по решению этой проблемы, кроме изменения имени файла в репозитории git?


person Swanand    schedule 24.02.2017    source источник


Ответы (1)


Возможно, это связано с тем, что Perforce не допускает использование символа «%» в имени файла.

Нет, потому что %25 – это кодировка в процентах для %.

Вам нужно попытаться git mv вернуть добавленный файл, используя \% или %%, чтобы увидеть, сможете ли вы восстановить правильный % в его имени.
Обязательно сначала обновите git до последней версии.

person VonC    schedule 24.02.2017