Хз у меня до сих пор только после танцев с бубнами получается отменить коммит после пуша =(
несмотря на
http://phpclub.ru/talk/threads/Как-удалить-commit-в-github.69892/#post-624523
Самый правильный подход в этой ситуации (ИМХО конечно) это работать по такой форкфлоу, при котором риск такой ситуации будет минимальным.
Если все же столкнулся с этой ситуацией, как по мне, лучше сделать одно из двух:
1) (лучше) использовать
git revert (эта команда автоматически создает коммит, основываясь на реверс-диффе, который переписывает изменения "плохого" коммита)
2) (хуже) создать такой коммит руками
AmdY
все правда что ты рассказываешь, только продуктивная работа с контролем версий подразумевает не только знание комманд но и изменение общего подхода к програмированию.
те. просто сел и пишу уже больше не годится...
Поддерживаю. Рано или поздно начинаешь задумываться над CI, а это уже совсем другая история, и с коммитами, и с пулл-реквестами.
А по поводу работы с гитом из IDE - я не могу так
Я люблю консоль за то, что всегда видно что ты делал шаг, два шага, семь шагов назад. Когда работаешь с несколькими ветками, в команде, где больше 3 человек, начинается такая путаница с
git branch -d branchname && git pull origin HEAD && git checkout -b newbranchname && git rebase master/dev && git push && git checkout master/dev && git branch -d newbranchname &&..., что, работая из IDE, невозможно уследить, что ты делал, а что нет, свежий код, или нет, можно пушить/мержить/ребейсить, или нет. В консоли спокойнее, там тишь да благодать
Но это, конечно, дело вкуса.