Я начал использовать git cherrypick; и в результате я сейчас (очень часто) сталкиваюсь с ситуациями, которые дают мне много файлов, помеченных как «удаленные нами».Howto "git ls" файлы, отмеченные git как "удаленные нами"
Я видел this other question, это упомянуто, как использовать git ls-files --deleted
, чтобы получить плоский список файлов; который затем может быть подключен к xargs rm.
Проблема: --deleted не перечисляет эти файлы «удалены нами».
Итак, длинный рассказ: какой самый простой/прямой способ удаления файлов «удалены нами»?
(мне очень понравилась мерзавца LS-файлы подход, поскольку это не требует СЭД/AWK магии, поэтому также не беспокоиться о получении котировки прямо ...)
Update; просто чтобы объяснить, почему это не какая-то ситуация с «XY проблемой»:
- Фактически я использую git svn; для подключения к некоторым бэкенд SVN сервер
- ствол SVN содержит каталоги A, B, C
- Я внесение изменений на стволу, которые влияют на все три директории
- Но: мерзавец, где я бегу вишнево-медиатор. .. действительно напоминает «ветви продукта», созданные на сервере SVN. Эти «товарные» ветви содержат только подмножества (поэтому есть A и B, а другие - B и C).
- Я старался; но я действительно не смог создать клон git svn, содержащий одновременно ветви продукта SVN и SVN.
что «удалено нами» на самом деле означает? –
'git ls-files --deleted | xargs rm' ** не является ** безопасным для имен файлов, которые нуждаются в цитировании. Только для записи. Вам нужны 'git ls-files -z --deleted | xargs -0 rm' для этого. –
Реальный вопрос: почему вы часто удаляете файлы в своей ветке, которые другие меняют на своих ветках? –