Как иметь git -svn изящно заботиться о пустых каталогах?
Я очень с удовольствием использую git -svn, хотя я заметил, что git имеет другой подход, когда дело доходит до пустых каталогов как SVN. Мне нужен способ обойти следующую конкретную ситуацию:
В моем проекте SVN-репозиторий есть несколько пустых каталогов, которые находятся там, и их не следует трогать. Из-за некоторого рефакторинга мне пришлось удалить другой каталог, в котором были файлы. git svn dcommit
удаляет файлы, но оставляет каталог. Мне кажется, что git незнание пустых каталогов приводит к несогласованности в моем SVN-репо.
Я хотел бы удалить этот конкретный каталог из моего репозитория SVN. Может ли git -svn сделать это? А если нет, как я должен это делать? (И - в конце концов - как я могу это сделать, одновременно с другими файлами вместе с ними в том же наборе изменений?)
Ответы
Ответ 1
Используйте аргумент rmdir или параметр конфигурации:
- RmDir
Используется только с командами dcommit, set-tree и commit-diff.
Удаление каталогов из дерева SVN, если файлов нет за. SVN может содержать пустые каталоги версий, и они не удаляются по умолчанию, если в них нет файлов. git не может быть пустым каталоги. Включение этого флага приведет к тому, что фиксация в SVN будет действовать как git.
config key: svn.rmdir
Ответ 2
Вам придется удалить его со стороны SVN:
svn delete -m "deleting empty dir" http://path/to/deleted/dir