У меня есть рабочее пространство в perforce, в котором я сделал несколько файлов для удаления. Теперь я хочу удалить это рабочее пространство.
Но у меня нет прав администратора. Как я могу достичь этого?
У меня есть рабочее пространство в perforce, в котором я сделал несколько файлов для удаления. Теперь я хочу удалить это рабочее пространство.
Но у меня нет прав администратора. Как я могу достичь этого?
Запустите p4 opened
, чтобы просмотреть все ваши открытые файлы и запустить p4 revert
, чтобы вернуть их.
Затем запустите p4 changes -c your-client-name -s pending
, чтобы просмотреть все ожидающие изменения списки. Поскольку на первом этапе вы вернули все ваши открытые файлы, эти списки изменений будут пусты. Запустите p4 change -d change-number
, чтобы удалить каждый пустой ожидающий список изменений.
Затем вы можете запустить p4 client -d
, чтобы удалить своего клиента.
Почему это только 11 кликов в P4V, через произвольную последовательность пунктов меню.
Позвольте отправить Perforce в школу юзабилити.
Вот что я сделал, чтобы удалить свой набор изменений по умолчанию, в котором было много файлов, извлеченных для редактирования:
p4 opened | sed 's/#.*$//g' | xargs -iF p4 revert F
Это отключит часть комментария из имени файла, созданного p4 opened
, и передайте имя файла на p4 revert
. После этого я ничего не ожидал и p4 changes -c my-client-name -s pending
ничего не дал. Если у вас есть огромный набор изменений, это займет некоторое время.
Здесь сценарий для удаления клиента Perforce. Используйте с осторожностью: это удаляет всю вашу работу на клиенте!
Отмените все измененные файлы на этом клиенте.
p4 -c $CLIENT revert -k //...
Обратите внимание на использование параметра -k
, который "отмечает, что файл был восстановлен в метаданных сервера без изменения файлов в рабочей области клиента". Поскольку мы собираемся удалить клиента позже, нам не нужно обновлять рабочее пространство клиента. Это ускоряет работу, если у вас открыто много файлов.
Удалите все отложенные файлы из ожидающих изменений, связанных с клиентом.
p4 changes -s shelved -c $CLIENT | cut -d' ' -f2 |
while read CHANGE; do p4 shelve -c $CHANGE -d //...; done
Если вы никогда не используете p4 shelve
, вы можете опустить этот шаг.
Все ожидающие изменения, связанные с клиентом, теперь пусты. Удалите их.
p4 changes -s pending -c $CLIENT | cut -d' ' -f2 | p4 -b 1 -x - change -d
Сейчас нет ожидающих изменений, связанных с клиентом. Удалите клиента.
p4 client -d $CLIENT
(Этот процесс должен быть намного проще! В частности, нет никакой веской причины, по которой мы должны удалять файлы с закрытыми файлами, связанные с клиентом, перед удалением клиента. Если вы обнаружите, что боретесь с этим, обратитесь в службу поддержки Perforce и предложите чтобы он стал проще.)
Написал этот script, называемый p4-delete-client для удаления p4-клиента (который имеет списки изменений и другие проблемы).
Он имеет следующие функции:
Обратите внимание, что script полагается на другие сценарии в repo.
попробуйте выполнить следующие шаги:
1.Нажмите на список изменений
Выберите "Изменить право собственности"
В поле рабочей области выберите уже существующее рабочее пространство и нажмите OK
Это просто сработало для меня в P4V для сброса списка изменений по умолчанию:
Щелкните правой кнопкой мыши по списку изменений по умолчанию и выберите "Редактировать в ожидании Changelist 'default' "
Нажмите кнопку в правом нижнем углу "Сохранить как пронумерованный список изменений"
Щелкните правой кнопкой мыши новый список изменений и выберите "Удалить список изменений XXX"
Вы также можете щелкнуть правой кнопкой мыши по новому списку изменений, чтобы вернуть файлы для всего, что вам нужно сделать, что недоступно в качестве опции в списке изменений по умолчанию.
Все файлы должны быть возвращены до удаления списка изменений.
Два шага через p4v (версия 2013.4):
Отменить все файлы.
Right click the pending changelist, and then choose "Revert Files"
Удалить список изменений.
Right click the changelist, and then choose "Delete Pending Changelist 'XXXXXX'"