Кто-то нажал 3 коммита, которые я хочу удалить, но я имею в виду, что я не хочу видеть их в истории фиксации в Github, потому что у них неправильное имя. Как это сделать?Github - Как вернуть кого-то?
ответ
Предполагая, что три коммитов являются тремя последними фиксациями, первое, что будет полезно, это сумма родительского фиксации, к которой вы хотите вернуться. Например: 6b1d1ca
. Вы можете найти это в правой колонке своей истории фиксации в GitHub.
Далее, вы хотите сбросить ваш мерзавец дерево, что совершать с помощью
git reset --hard 6b1d1ca
Поскольку вы удаляете коммиты из истории, вам нужно будет заставить толчок к GitHub, что может быть сделано путем добавления опция --force
.
git push --force
Будьте осторожны при использовании опции --force
, если вы нажимали фиксаций, так как они, безусловно, будут перезаписаны.
Это зависит от текущего состояния вашего репозитория.
Если те три последних коммита, и вы действительно «не хотят, чтобы их увидеть», вы могли бы сбросить на коммит, который расположен непосредственно перед этими тремя:
мерзавца сброса --hard ГОЛОВУ ~ 3
А потом толчок используя --force.
В общем, если вы хотите вернуться коммит, вы должны использовать мерзавца вернуться. Например:
мерзавец вернуться мерзавец вернуться ГОЛОВЫ ~ < 2> .. ГОЛОВУ
Это позволит создать коммит, который удаляет изменения из последних трех коммитов.
Этого недостаточно, если изменения уже нажаты. – GolezTrol
Не возврат, а сброс и нажатие с использованием силы заставят эти фиксации исчезнуть. Я только добавил объяснение о том, что означает возврат, потому что я думал, что это может быть полезно. К сожалению, мне кажется, нам нужно знать немного больше о том, как выглядит репозиторий прямо сейчас для более конкретного решения. –
Вы можете команду rebase
удалить или изменить сообщения коммитов.
тип
git rebase -i HEAD~4
. Опция-i
имеет номер interactive rebasing.Ваш текстовый редактор откроется с последними . 4 Committ перечислены. Каждая фиксация будет иметь слово
pick
перед этим.Удалите строки для фиксаций, которые вы хотите удалить. Это скажет
rebase
, что вы не хотите сохранять эти фиксации в истории.Сохраните файл и закройте его.
Теперь мерзавец должен сделать «перебазироваться» вашей истории в соответствии с параметрами, которые вы выбрали в файле, который открыт, то есть удалить коммиты вы не хотите.
Если вы хотите изменить совершающее сообщений, измените pick
на reword
перед каждой фиксацией вы хотите отредактировать и сохранить файл.
- 1. Github вернуть ошибку «Не удалось вернуть фиксацию»
- 2. как вернуть обратно мой репортер github?
- 3. Вернуть GitHub PR для конкретного совершения
- 4. Создать и вернуть токен Github из bash
- 5. Как я могу вернуть push в репозиторий в GitHub
- 6. Github - Как вернуть весь проект определенной фиксации в Webstorm
- 7. Как я мог вернуть частичные результаты поиска внутри репо GitHub?
- 8. GitHub: Как вернуть ветку разработчика в мастер-ветку?
- 9. Как восстановить репозиторий github
- 10. Как исправить дату передачи GITHUB?
- 11. Как конвертировать GitHub Wiki в страницы GitHub?
- 12. github: как удалить вложение в github?
- 13. Как развернуть репозиторий без GitHub на GitHub?
- 14. GitHub: как добавить подпапок в GitHub-Repository
- 15. Как восстановить ветку на github?
- 16. Репозиторий GitHub старше GitHub?
- 17. Как вернуть чистый репозиторий git?
- 18. Как исправить github после неправильного нажатия
- 19. Как отменить фиксацию в репозитории GitHub?
- 20. Github - copy github commit history
- 21. Github как маршруты
- 22. Как переименовать репозиторий GitHub?
- 23. GitHub как навигационном
- 24. Как называется функция github?
- 25. Как скомпилировать проект GitHub?
- 26. Как разрешить API GitHUb
- 27. Как использовать репозиторий github
- 28. Как применить патч github?
- 29. Как сменить пользователя GitHub?
- 30. как загрузить с GitHub
Есть ли они в отдельной ветке? Если это так, просто удалите ветку на пульте дистанционного управления, верните локальные коммиты и завершите все снова. – GolezTrol
Существует только главная ветка. – ThirdMartian
Первый результат для [git revert pushed commit] (http://christoph.ruegg.name/blog/git-howto-revert-a-commit-already-pushed-to-a-remote-reposit.html). – GolezTrol