Почему p4 flush не обновляет мой список? - PullRequest
0 голосов
/ 25 февраля 2019

Моя версия клиента p4 - P4 / NTX64 / 2018.1 / 1705517.
Я заметил, что некоторые файлы были случайно удалены в моей рабочей области.Я синхронизировал, но даже в этом случае файлы не появлялись.
Затем я запустил команду p4 have и увидел, что она содержит отсутствующие файлы, и поэтому p4 не будет включать эти файлы в синхронизацию.
КонечноЯ могу дать команду p4 sync с флагом -f, но мое рабочее пространство довольно большое, так что это займет много времени.
Затем я выполнил команду flush даже с флагом -f, думая, чтоэто исправило бы мой список have, чтобы отразить то, что у меня на самом деле было в файловой системе моего рабочего пространства, но это не так.Что я делаю не так?

1 Ответ

0 голосов
/ 25 февраля 2019

p4 flush изменяет список have так, чтобы он соответствовал тому, что вы указали, чтобы он совпадал (если аргументов нет, то по умолчанию #head).Если это не то, что на самом деле содержит ваше рабочее пространство, то список имущих теперь не синхронизирован с рабочим пространством, и будущие команды p4 sync, вероятно, пропустят кучу файлов (точно так же, как вы видите сейчас).

Командой, которую вы хотите, является p4 clean, которая синхронизирует ваше рабочее пространство в соответствии с вашим списком.(Если у вас есть изменения в неоткрытых файлах, включая «новые» файлы, которые вы не открыли с помощью p4 add, это приведет к их безвозвратному уничтожению. Осторожно!)

Если вы хотите открыть файлы, которые нене соответствует вашему списку, используйте p4 reconcile.(Вы можете выполнить это с помощью p4 revert, чтобы отменить изменения, или p4 submit, чтобы сохранить их навсегда.)

...