Я нахожусь в ситуации с git, когда я управляю config-in-code для веб-сайта.
Прежде чем я буду готов к развертыванию, я хочу проверить мой каталог конфигурации на предмет свежего экспорта конфигурации в коде с живого сайта.Я хочу подтвердить, что вижу изменения от новых функций, но не вижу ни удаления, ни перезаписи функций, которые мы хотим сохранить, сделанных на живом сайте во время разработки новых функций.
Поэтому, когда я выполняю экспорт в моей ветви интеграции, я вижу git status
что-то вроде этого:
modified: core.entity_form_display.node.page.default.yml
modified: core.entity_view_display.node.landing_page.default.yml
modified: core.entity_view_display.node.page.default.yml
modified: core.entity_view_display.node.page.full_width.yml
modified: field.field.node.page.field_another_field
deleted: field.field.node.landing_page.field_social_media_share_image.yml
deleted: field.field.node.page.field_documents.yml
deleted: system.core.config.deal
Я хочу избавиться от изменений deleted
, носохраните все изменения modified
, чтобы я мог проверить изменения по отдельности.Любой файл, который был удален при экспорте новой конфигурации с живого сайта в интеграцию, - это просто недавно разработанная функция, которая еще не была развернута в производство.Однако модификация файла конфигурации может сбить с толку разработчика, который не заботился о том, чтобы оставаться в курсе конфигурации во время разработки.
Это все перед фиксацией.Как я могу отменить все удаления файлов, желательно одной командой, сохранив все изменения?Конечно, я могу сделать git checkout fileA
один за другим, но мне интересно, есть ли более быстрый путь.Завершение табуляции не может работать здесь, потому что bash не может видеть файл в каталоге, так как он удален.