Вы не можете получить часть отдельного коммита в Git.Вы либо извлекаете коммит, либо нет - нет промежуточного шага.
Это означает, что если есть коммит, который добавляет кучу файлов, вы можете получить все эти файлы (потянувкоммит в ваш локальный репо) или ни один из них (не потянув этот коммит).
Вы можете выбрать, какие коммиты вы хотите с git cherry-pick
, но я подозреваю, что это не поможетв этом случае вам очень нравится.
Обычно файл должен быть либо в системе управления версиями, либо нет - я не могу придумать причину, по которой вам нужен файл в Git только иногда.Если что-то есть в вашем .gitignore, то это, вероятно, хороший кандидат для полного удаления из репозитория..gitignore в основном означает «не смотрите на этот файл, он не находится под контролем версий».
(Если вы не возражаете переписать историю своего репозитория, вы можете выбрать коммит add, затем выполните git reset --mixed HEAD^1
и создавайте новые коммиты, которые пропускают файлы, которые вам не нужны ... но не делайте этого, если вы действительно не знаете, что делаете. Лучше просто удалить файлы и нажать новый коммит, который записывает удаление.)
РЕДАКТИРОВАТЬ: только что увидел ваш комментарий о желании конкретных частей для развертывания.В этом случае я бы предложил создать ветку развертывания, которая удаляет ненужные файлы.Вы можете перебазировать эту ветку с основной линии, когда это необходимо, и она каждый раз должна волшебным образом удалять файлы для вас.