Я плохо знаком для По необходимости, и это не подходит вообще. Но в настоящее время, я полностью застреваю как все, что я могу получить, это для высказывания:
$ p4 open a_code_file.cpp
Locked client 'my_hostname' can only be used by owner 'perforce'.
У меня нет абсолютно никакой идеи, что я сделал для нарушения его, и само сообщение об ошибке является бессмысленным мусором мне. "по необходимости" ничем не владеет - все файлы принадлежат мне. Я нахожусь в По необходимости репозиторий, т.е., существует a .p4rc
несколько каталогов.
Править: Это только, кажется, некоторые файлы. Если я:
$ cd some_other_directory_in_the_repo
$ p4 open a_file
...работает. Таким образом, это - только некоторые вещи...
Ошибка "locked client" указывает на то, что p4 пытается использовать клиентское рабочее пространство, названное по имени вашего хоста и принадлежащее пользователю perforce. Если Perforce не может найти правильное имя клиента в реестре (в Windows), переменных окружения или в файле окружения, он будет по умолчанию использовать клиентское рабочее пространство с именем вашего хоста.
Похоже, что Perforce не может найти действительное клиентское рабочее пространство для вашего "сломанного" каталога, и находит его для вашего "рабочего" каталога.
Поскольку у вас есть один каталог, который работает, и один каталог, который не работает, можете ли вы попробовать:
$ p4 set
из обоих каталогов и сравнить результаты? Если Perforce сможет найти действительного клиента, вы увидите что-то вроде:
P4CLIENT=XXXX (config)
(символ "(config)" означает, что Perforce получает эту переменную конфигурации из файла конфигурации. Обратитесь к p4 help set
за дополнительной информацией о различных способах задания переменных.)
Посмотрите также на строку типа:
P4CONFIG=.p4env
- это то, что Perforce будет использовать для поиска конфигурации вашего рабочего пространства. Если вы используете файл с именем .p4rc
, то P4CONFIG должен быть установлен именно на это значение.