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

5057
Phrogz

Описание: командная строка 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?

4
Связанный: http://stackoverflow.com/q/9885053/405017 Phrogz 10 лет назад 0

2 ответа на вопрос

6
Phrogz

Настройки командной строки 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 будет работать.

0
Kiril Aleksandrov

The approach I use is as follows:

1 All global perforce settings I set through environmental variables:

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

2 Tell perforce that specific client's configuration is stored in .p4config file located in the root folder of the client's view. This is done through an environmental variable too:

P4CONFIG=.p4config 

3 Then in each client's root folder I create a .p4config file and set there the specific client's configurations as follows:

P4CLIENT=my_client_1 P4PORT=server:1234 P4USER=myusername