Исправить командную строку P4, чтобы всегда работать

Резюме: командная строка Perforce p4 не работает правильно, если я не открываю оболочку из P4V. Как / где я могу редактировать вещи, чтобы исправить мою конфигурацию, чтобы она всегда работала?

подробности

На Windows 7x64, если я запускаю cmd.exe и затем с помощью командной строки p4 он пытается подключиться к старому серверу, который больше не существует:

C:\>p4 info
Perforce client error:
        Connect to server failed; check $P4PORT.
        TCP connect to p4proxy-bdr:2006 failed.
        connect: p4proxy-bdr:2006: WSAETIMEDOUT

C:\>echo %P4PORT%
%P4PORT%

Однако, если я запускаю P4V (который подключается к нужному серверу), щелкните правой кнопкой мыши любой файл в моей рабочей области и выберите "Открыть командное окно здесь", те же команды будут работать правильно:

C:\>p4 info
User name: gkistner
Client name: gkistner-dt2
Client host: gkistner-dt2
Client root: C:/p4/p4sw
Current directory: c:\
Peer address: <redacted>
Client address: <redacted>
Server address: <redacted>
Server root: <redacted>
Server date: 2013/08/13 10:05:09 -0700 PDT
Server uptime: 1512:04:23
Server version: <redacted>
Server license: <redacted>
Server license-ip: <redacted>
Case Handling: sensitive

C:\>echo %P4PORT%
p4sw:2006

Где P4 получает конфигурацию, когда я запускаю ее из ванили cmd.exe, и как я могу изменить это так же, как P4V?

2 ответа

Решение

Настройки командной строки P4 могут быть установлены с помощью p4 set команда. Без аргументов в рабочей оболочке перечисляются текущие значения:

C:\>p4 set
P4CLIENT=gkistner-dt2
P4EDITOR=C:\Windows\SysWOW64\notepad.exe (set)
P4PASSWD=<redacted> (set)
P4PORT=p4sw:2006
P4USER=gkistner

Затем перейдите в нерабочую оболочку и скопируйте / вставьте каждый из них с префиксом p4 set:

C:\>p4 set P4CLIENT=gkistner-dt2
C:\>p4 set P4EDITOR=C:\Windows\SysWOW64\notepad.exe
C:\>p4 set P4PASSWD=<redacted>
C:\>p4 set P4PORT=p4sw:2006
C:\>p4 set P4USER=gkistner

Теперь вы можете закрыть эту оболочку и открыть любую новую, и P4 будет работать.

Подход, который я использую, заключается в следующем:

1 Все глобальные настройки производительности, которые я установил с помощью переменных среды:

P4EDITOR=C:\Program Files (x86)\Vim\vim74\gvim.exe

2 Скажите, что конфигурация конкретного клиента хранится в .p4config файл находится в корневой папке просмотра клиента. Это также делается с помощью переменной среды:

P4CONFIG=.p4config

3 Затем в корневой папке каждого клиента я создаю .p4config файл и установите там определенные конфигурации клиента следующим образом:

P4CLIENT=my_client_1
P4PORT=server:1234
P4USER=myusername
Другие вопросы по тегам