Подтвердить что ты не робот

Проблемы с использованием командной строки perforce под cygwin

Таким образом, практически невозможно использовать командную строку perforce для чего угодно, кроме синхронизации. Мой корень рабочего пространства сопоставляется с C: \ Здесь строка моей спецификации клиента: //claims 1.0/main/...//cthiel/code/claims1.0/main/...

Каждый раз, когда я запускаю cygwin и пытаюсь работать с любыми файлами моего депо (например, редактировать p4), я получаю сообщение об ошибке: Path '/cygdrive/c/code/commonTest/main.p4ignore' не находится под корнем клиента C: \.

Пути не совпадают, потому что эквивалент C:\для cygwyn -/cygdrive/c. Поэтому он никогда не смог найти файлы с командной строкой perforce.

Есть ли способ исправить это? Это очень раздражает.

4b9b3361

Ответ 2

Найдено решение:
Добавьте это в свой .bashrc:

function p4() {
export PWD=`cygpath -wa .`
/cygdrive/c/Program\ Files/Perforce/p4.exe [email protected]
}

Работает как прелесть для меня.

Ответ 3

Вы можете настроить altroots в своей спецификации клиента, которая может покрыть это?

Несмотря на то, что cygwin p4 - это решение, для которого я бы пошел. Но я бы пошел на последнюю версию: http://filehost.perforce.com/perforce/r09.2/bin.cygwinx86/p4.exe - он будет работать с любым старым сервером, но будет иметь меньше ошибок.

Ответ 4

Обратите внимание, что Клиент CLI Perforce для CygWin устарел и больше не будет поддерживаться после 5/1/2013, согласно Веб-сайт Perforce. Обсуждается эта тема на форумах поддержки Perforce, в том числе опрос, который пытается оценить уровень интереса при постоянной поддержке клиента CygWin. Поддержка прекращается по финансовым причинам (лицензионные платежи Redhat для коммерческого распределения Cygwin); поэтому, если будет проявлен достаточный интерес, это решение может быть пересмотрено.

Если вы используете клиент P4 Cygwin, когда-либо имевший или интересующийся предметом, я настоятельно призываю вас принять участие в опросе. Спасибо.

Ответ 5

Измененная версия функции .bashrc, чтобы избежать накладных расходов cygpath и автоматически найти p4.exe в PATH:

function p4() {
    PWD= `which p4` "[email protected]"
}

Ответ 6

Корень Alt, похоже, отлично работает для меня. Однако я не использую cygwin. Мой исходный код находится в Linux-сервере, и у меня есть клиент в Windows-машине. Я подключил рабочее пространство сервера к окнам с помощью сетевого диска.