2016-05-26 5 views
0

Я знаю, что в общем случае при запуске p4 changes вам нужно указать спецификацию клиентов, чтобы Perforce мог правильно ограничить результаты.Perforce: Любой способ запустить 'p4 changes' без clientpec?

Тем не менее, в P4V, вам разрешено работать в режиме «не рабочее пространство не выбрано», и вы можете просматривать изменения, и т.д.

Я хочу сделать что-то подобное из сценария, но единственный способ, которым я может думать, для достижения этой цели является:

  1. Создать временную clientspec, с некоторым общим //depot/... отображения
  2. выполнять свои операции (например: p4 changes blabla)
  3. Удалить временный clientspec

Но я не хочу, чтобы все эти временные клиенты были созданы/уничтожены все время. Кажется, что P4V не делает этого в своем режиме «no workspace selected».

Есть ли способ проделать то же самое, с командной строки?

+0

'p4 changes -m1 // ...' похоже, работает для меня даже без набора клиентов. Какую ошибку вы получаете? – sferencik

+0

Хм, может быть, моя проблема действительно сводится к «Как я могу сказать, что Perforce использует * no * clientspec». Если я запускаю 'p4 client -o' прямо сейчас, он дает мне clientpec, основанный на некоторых вариантах по умолчанию, которые неправильно отображают данные. Я хочу указать явно: * no clientspec вообще, пожалуйста * – jwd

+0

Запустите 'p4 set', и это должно не только сообщить вам, что ваш' P4CLIENT' установлен (который вы, вероятно, знаете), но и дать вам подсказку о том, механизм] (https://www.perforce.com/perforce/r12.1/manuals/cmdref/set.html) (для этого была использована переменная среды, 'p4config', реестр и т. д.). Затем отмените настройку. – sferencik

ответ

2

Ваша спецификация клиента вообще не имеет значения, если вы предоставляете путь депо к команде «p4 changes». Просто запустите:

p4 changes //depot/... 

или любой другой команды, вы собираетесь работать с временным «// склад/...» отображенной клиента спецификации.

Ваша спецификация клиента будет использоваться только в том случае, если вы используете аргумент, который явно связан с клиентом, такой как локальный путь к файлу, спецификатор спецификации #have и т. Д. Если вы не используете аргумент, относящийся к клиенту, это не имеет значения, если ваш clientpec не определен, если он отображает только один файл или если он отображает весь мир, вы получите те же результаты из «p4 changes», несмотря на.

+0

Ах, кажется, правильно. Я сбивал с толку, потому что я использовал '-c myclient' и' // myclient/... ', но этот clispec был пуст. – jwd

 Смежные вопросы

  • Нет связанных вопросов^_^