Подтвердить что ты не робот

Разбить несколько изменений на отдельные коммиты с помощью git?

Если я сделал несколько наборов изменений в большом файле, можно ли разделить их на отдельные коммиты с помощью git?

4b9b3361

Ответ 1

Вы хотите git add --patch (документация), который позволит вам выбрать, какие изменения на этапе.

Ответ 2

Да, вы можете - использовать git add -i, чтобы выбрать, какие кучки вы хотите выполнить для каждой фиксации. Вы можете получить документацию, запустив git help add и прокрутите до "Интерактивный режим".

Ответ 3

Ответ Уильямса абсолютно прав. Но иногда легче делать вещи вручную. Например, если вы случайно обновили некоторую стороннюю библиотеку с большим количеством файлов, прежде чем вносить изменения, которые вы делали ранее. С git add -p (так же, как --patch) вам нужно будет пройти через все эти файлы. Таким образом, в этом случае гораздо удобнее всего лишь скомпоновать файл, который вы хотите зафиксировать, и сделать вторую фиксацию со всеми другими изменениями:

> git add /path/to/your/file.txt
> git commit -m "my commit message"
[master a0c5ea6] my commit message
1 file changed, 2 insertions(+), 1 deletion(-)
> git add --all
> git commit -m "updated library xyz"