Bitbucket как удалить коммит через интерфейс
Перейти к содержимому

Bitbucket как удалить коммит через интерфейс

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

Я храню файлы laravel в битбакете, и у меня также есть локальная копия проекта. Каждый раз, когда я сохраняю свою локальную копию, я отправляю ее в удаленный репозиторий в битбакете, чтобы у них было такое же обновление.

Проблема: я допустил ошибку в своем локальном проекте и хочу удалить последнюю фиксацию в удаленном репозитории в битбакете.

Кто-нибудь знает, как удалить / удалить последнюю фиксацию в битбакете?

4 ответа

Вы можете использовать git hard reset git reset документацию тогда вам просто нужно принудительно нажать свой репозиторий

Посмотрите этот пост:

В нем будут описаны методы для этого.

Но имейте в виду, что если ваш сервер не разрешает принудительное нажатие, вы не сможете отправить старый коммит HEAD на сервер,

Сначала удалите фиксацию в вашем локальном репозитории. Вы можете сделать это с помощью git rebase -i . Например, если это ваша последняя фиксация, вы можете сделать git rebase -i HEAD

2 и удалить вторую строку в появившемся окне редактора.

Затем нажмите с усилием на свою репутацию с помощью git push origin +master .

Рабочее дерево грязное, вы должны сначала сделать git stash , а затем git stash apply .

Начните с отмены последней фиксации в вашем локальном репозитории:

Если вы хотите отменить фиксацию, но сохранить изменения в дереве файлов, используйте

git отменить определённый коммит

Для отмены определённого коммита в git нужно знать sha1 — уникальный идентификатор коммита. Это 40-символьная строка — хэш коммита. Например, c8a861ebb73d5164c76d74ba4a55be517d67944d или 54e7fd1065761ef1d58d83b1a7f60b3ba63eff40.

Можно указывать первые n символов, а не sha1 целиком.

Отменить определённый коммит в git нужно командой:

git revert sha1

1. Сначала находим нужный нам коммит, который нужно отменить. Нас интересует sha1-хэш коммита. Используем для этого любую удобную утилиту для работы с git или через интерфейс github, bitbucket и т.д.

Для поиска хэша коммита я использую стантартную команду git log .

Если помните примерное имя коммита, то можно грепнуть из git log, например:

2. Теперь отменяем коммит командой git revert с указанием sha1 коммита:

При возникновении конфликтов придётся их пофиксить, как и при git merge. После чего нужно будет как обычно сделать git add , git commit .

Если конфликтов нет, то автоматически будет создан новый коммит, отменяющий указанный коммит.

Коммит отменён. Как можно было заметить, отмена коммита — это создание нового коммита (реверт-коммит), который отменяет определённый коммит.

Есть возможность "чистой" отмены последнего коммита в git, если ещё не сделан git push. В этом случае никаких реверт-коммитов не останется в git-истории.

Как удалить последний коммит из bitbucket?

Дело для меня не простое
Проект древний, запутанный, сделан криворукими разработчиками, что его еле на сервер воткнули, и то не с первого раза.

Я пытался локального его и так и эдак запустить — ничего не помогало. Решил работать со стилями «вслепую» — делаю изменения, пулл на сервере и смотрю.

И вот так позабыв, что я пытался его ставить, сделал несколько изменений, сделал пуш в репозиторий, пулл на сервере и проект лег.
Быстренько откатил до предыдущего коммита на сервере.

Но как теперь удалить мой последний коммит с репозитория? Попробовал локально git revert — удалился коммит, но все изменения, которые все равно закоммитятся, остались. Снес вообще локальный клон, клонировал репозиторий снова.

Как правильно поступить, чтобы вообще остался только предыдущий коммит без каких-либо изменений?
Была б кнопка «удалить последний коммит» в интерфейсе битбакета — было бы идеально.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *