Начинаю работать с системой управления версиями git. При работе над первым своим проектом возник вопрос, можно править уже сделанные коммиты или нет. Вот такую последовательность действий я сделал в своём проекте:
- создал файл index.html и .htaccess, сделал коммит
- создал файл action.php и изменил index.html, сделал коммит
- создал index.php как аналог index.html, но уже на языке PHP, включил в него также функционал из action.php (index.html и action.php стали больше не нужны), сделал коммит
- нашёл ошибку в index.php, отредактировал его, сделал коммит
- обнаружил, что у меня не закомичено удаление index.html и action.php, закомитил
Собственно, никак не могу понять как сделать 2 вещи:
комментарий к коммиту 1 я считаю неправильно информативным и хочу его переименовать. Прочитал в инете, что переименовать можно только теущий коммит, то есть сначала мне нужно сделать checkout на коммит 1, Делаю:
git checkout <хэш коммита 1>
git commit --amend -m "новый комментарий"
после данных действий при просмотре истории через "git log" я вижу, что все мои коммиты пропали кроме изменённого, а при просмотре через "git log --all" вижу, что коммитов стало уже не 5, а 6
Второй вопрос, как удалить коммиты 3 и 4, чтобы они изчезли в том числе из "git log --all", у меня по сути было 3 изменения в проекте, коммиты с 3 по 5 по сути являются шагами одного изменения и хранить в истории коммиты 3 и 4 никакой надобности нет.