Можно ли отменить определенные символы ** только ** из git commit - PullRequest
0 голосов
/ 25 февраля 2019

Я не уверен, возможно ли это, но я огляделся и ничего не видел.Даже не знаю, как бы мне это обернуть.

Возможно ли и, если да, то как отменить / удалить только определенные символы в коммите git?

Например,представьте, что вы делаете коммит, который вносит изменения в файл кодовой базы со многими изменениями символов

== to === // for if checks
is_null() to === null

, и вы хотите отменить только изменение символа "=" в коммите, а остальные должны остаться без изменений.

Заранее спасибо за помощь!

Ответы [ 2 ]

0 голосов
/ 25 февраля 2019

Есть способы что-то изменить (git edit), но проблема в том, что вы уже отодвинули свои модификации.Это означает, что если кто-то потянул его, у вас будут проблемы, потому что у вас будут разные деревья.Посмотрите, как это сделать, и почему вы должны избегать этого:

Как отправить исправленный коммит в удаленный репозиторий Git?

Большую часть временипроще создать новый коммит с этими дополнительными изменениями.Единственным случаем, когда я абсолютно хотел изменить исходящее репо, было удаление файла из истории репо (что требует повторного создания коммитов).

Как удалить / удалить большой файл из коммитаистория в репозитории Git?

0 голосов
/ 25 февраля 2019

Нет, невозможно изменить что-либо о любом коммите.

Причина в том, что идентификатор фиксации - это ее хэш-идентификатор и его хэш-идентификаторкриптографическая контрольная сумма его содержания.Так что если вам действительно удастся изменить его содержимое, у вас будет новый и другой коммит.

В этом нет ничего плохого - вы можете сказать: Привет всем, забудьте про коммит badf00d, используйте мой фиксированный коммит с идентификатором cafedad. Но вы не изменили коммит, вы просто сделали новый улучшенный взамен.

недостатком здесь является то, что кто-то может создавать вещи на старом, неправильном коммите.Им придется что-то сделать, чтобы перейти к созданию своих вещей на новом улучшенном коммите.Это не сложно , но это немного раздражает.Проще оставить старый неправильный коммит в и просто добавить исправленный коммит после: Привет всем, коммит badf00d имеет ошибку, она исправлена ​​в последующем коммите f100ded. Этот конкретный рабочий процесс - получение новых коммитов, которые добавляют к уже существующим - это то, что каждый должен уметь делать всегда, так что это проще.

выбор (заставить других переключаться) остается за вами.

(Если вы заинтересованы в механике, о том, как выполнить эти различные действия - сказать людям, чтобы они забыли о плохом коммите в пользу хорошегов частности, это другой вопрос. Но он уже здесь, в StackOverflow.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...