Ответ 1
Даже mo 'betta':
Используйте клиент cygwin p4:
http://filehost.perforce.com/perforce/r07.2/bin.cygwinx86/p4.exe
Просто убедитесь, что это находится на вашем пути до Perforce/p4.exe. Et voila.
Таким образом, практически невозможно использовать командную строку 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.
Есть ли способ исправить это? Это очень раздражает.
Даже mo 'betta':
Используйте клиент cygwin p4:
http://filehost.perforce.com/perforce/r07.2/bin.cygwinx86/p4.exe
Просто убедитесь, что это находится на вашем пути до Perforce/p4.exe. Et voila.
Найдено решение:
Добавьте это в свой .bashrc:
function p4() {
export PWD=`cygpath -wa .`
/cygdrive/c/Program\ Files/Perforce/p4.exe [email protected]
}
Работает как прелесть для меня.
Вы можете настроить altroots в своей спецификации клиента, которая может покрыть это?
Несмотря на то, что cygwin p4 - это решение, для которого я бы пошел. Но я бы пошел на последнюю версию: http://filehost.perforce.com/perforce/r09.2/bin.cygwinx86/p4.exe - он будет работать с любым старым сервером, но будет иметь меньше ошибок.
Обратите внимание, что Клиент CLI Perforce для CygWin устарел и больше не будет поддерживаться после 5/1/2013, согласно Веб-сайт Perforce. Обсуждается эта тема на форумах поддержки Perforce, в том числе опрос, который пытается оценить уровень интереса при постоянной поддержке клиента CygWin. Поддержка прекращается по финансовым причинам (лицензионные платежи Redhat для коммерческого распределения Cygwin); поэтому, если будет проявлен достаточный интерес, это решение может быть пересмотрено.
Если вы используете клиент P4 Cygwin, когда-либо имевший или интересующийся предметом, я настоятельно призываю вас принять участие в опросе. Спасибо.
Измененная версия функции .bashrc, чтобы избежать накладных расходов cygpath и автоматически найти p4.exe в PATH:
function p4() {
PWD= `which p4` "[email protected]"
}
Корень Alt, похоже, отлично работает для меня. Однако я не использую cygwin. Мой исходный код находится в Linux-сервере, и у меня есть клиент в Windows-машине. Я подключил рабочее пространство сервера к окнам с помощью сетевого диска.