Как я могу удалить невосстановимый файл из репозитория Perforce?

В моем репозитории Perforce есть файл, который был отправлен некоторое время назад и когда-то был действительным. Мне нужно переместить файл и его родительский каталог в другое место в репозитории. Однако я не могу получить копию файла из репозитория из-за следующей ошибки, обнаруженной в P4V (2010.2) и p4 в Linux и Mac OS X:

Bad AppleSingle/Double header.
Malformed FInfo/FXInfo structure! File not updated.

Файл представляет собой установщик Apple DMG (образ диска). Похоже, что файл в репозитории поврежден, и я не могу его восстановить.

Можно ли получить файл независимо от ошибок в файле в репозитории?

Можно ли переместить файл в репозиторий, не имея локальной копии файла в моей рабочей области?


person Scott Kidder    schedule 27.09.2011    source источник
comment
Как вы пытаетесь переместить файлы? какую команду вы используете или какой метод графического интерфейса вы используете?   -  person Mark    schedule 28.09.2011
comment
Я пробовал использовать графический интерфейс P4V в Linux и Mac OS X с тем же результатом при запуске Получить последнюю версию. Я также пробовал использовать клиент p4 командной строки в Linux и Mac OS X с аналогичными результатами.   -  person Scott Kidder    schedule 28.09.2011
comment
Правильно. Но я спрашиваю, что вы сделали специально, чтобы попытаться переместить файлы. Вы пробовали использовать команду «p4 move» или параметр «переместить / переименовать» в p4v?   -  person Mark    schedule 28.09.2011
comment
Вот шаги, которые я предпринял в клиенте P4V: Выберите представление хранилища. Выберите файл, который не синхронизируется с моей рабочей областью. Один раз щелкните файл правой кнопкой мыши и выберите «Получить ревизию ...». Выберите «Получить последнюю версию» Нажмите OK Сообщение об ошибке встречи, упомянутое выше. Я редко использую клиент командной строки p4, поэтому попробовал его в крайнем случае. Я запустил p4 sync, но это не помогло с тем же сообщением, о котором упоминалось ранее. Я смог решить эту проблему, вернувшись к более ранней версии файла в хранилище. Это менее желательно, так как одна ревизия файла полностью потеряна.   -  person Scott Kidder    schedule 28.09.2011


Ответы (1)


Используйте инструмент командной строки:

p4 delete -n //path/to/the/rotten/file

Пока ваш клиент отображает // путь / ... вы можете удалять вещи, не извлекая их (например, не выполняйте сначала p4 sync)

person IanNorton    schedule 10.02.2012