Проблемы, использующие по необходимости командную строку под cygwin

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

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

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

Существует ли способ зафиксировать это? Это является очень раздражающим.

20
задан bergyman 21 January 2010 в 17:15
поделиться

4 ответа

Даже Mo 'Betta':
Используйте клиент Cygwin P4: http://filehost.perforce.com/perforce/r07.2/bin.cygwinx86/p4.exe

Просто убедитесь, что это на вашем пути перед perforce / p4.exe. И вуаля.

11
ответ дан 29 November 2019 в 23:02
поделиться

Вы можете настроить ALTROOTS в вашем клиентском спецификации, которые могут охватывать это?

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

5
ответ дан 29 November 2019 в 23:02
поделиться

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

function p4() {
export PWD=`cygpath -wa .`
/cygdrive/c/Program\ Files/Perforce/p4.exe $@
}

Работает как очарование для меня.

35
ответ дан 29 November 2019 в 23:02
поделиться

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

function p4() {
    PWD= `which p4` "$@"
}
1
ответ дан 29 November 2019 в 23:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: