Рекомендую создать ветку темы.Работайте над этой веткой, часто совершайте.Каждый коммит должен быть небольшим, легко проверяемым изменением, которое имеет смысл.Не создавайте бегемотов.Также часто нажимайте на свою ветку, чтобы другие могли работать / просматривать ее, и чтобы она присутствовала где-то, а не только локально (если случается катастрофа).Когда вы почувствуете, что ваша работа закончена, вы должны выполнить ребазинг (объединить коммиты, отредактировать коммиты) и очистить вашу работу.Когда это выглядит лучше, вы либо объединяете свою ветку с основной веткой, либо перебазируете свою ветку (перебазирование будет выглядеть так, как будто вы сделали коммиты поверх основной ветки) в основную.После этого вы можете удалить ветку своей темы.
Чтобы создать ветку темы
git checkout -b <topic-name>
Чтобы переместить вашу ветку в источник
git push -u origin <topic-name>
Просмотрите главу о перебазировании какэто заставит вашу работу выглядеть профессионально: git-rebase
Научитесь перебазированию, чтобы оно стало второй натурой.Это отличный инструмент, когда его освоили.
Как правило, для исправления изменений вносятся изменения.
Копирование может работать, если вы хотите сохранить небольшие изменения, сделанные вами локально.Если они становятся больше, быстро становится трудно понять, что произошло.Их гораздо сложнее администрировать с течением времени.
Надеюсь, это поможет.