Подтвердить что ты не робот

Удалить историю передачи Github

В любом случае мне удастся удалить историю github commit? Я не хочу потерять все свои обязательства, только последние 10 или около того, которые были перенесены в github. Я не могу понять, как это сделать.

4b9b3361

Ответ 1

Просто выберите хеш, который вы хотите вернуться, и в своем клоне:

git reset --hard hash# 
git push -f origin branch

где branch - название ветки, которую вы хотите нажать. Вуаля. Будьте осторожны с толчком силы. Возможно, вам захочется скопировать рабочий каталог, пока вы не знакомы с ним.

Ответ 2

Если вы хотите сделать это, вы можете использовать HEAD~10

git reset --hard HEAD~10

git push -f origin master

Не рекомендуется удалять историю фиксации сервера, особенно: если у вас есть команда людей, работающих над этим репо.

Если у вас есть команда людей, которые работают над этим, я бы рекомендовал отступить, добавив еще одну фиксацию, которая отменяет ваш код, который вам не нужен.

Ответ 3

Я загрузил все мои файлы в свой первый проект github, включая некоторые файлы настроек с секретными ключами. Мне пришлось вернуться и удалить все версии, которые были включены до того, как я добавил свой файл .gitignore, и удалил все файлы настроек из кеша проекта.

Как я это сделал:

gedit ./.git/logs/HEAD

Найдите 40-символьный SHA-хэш "нового корня", который вы хотите удалить все до. Скопируйте его в буфер обмена и закройте. (Вы можете или не использовать gedit текстовый редактор по умолчанию для Linux).

$> gedit ./.git/info/grafts

Вставьте здесь SHA. Перейдите в каталог проекта.

$> cd ../..

$> git filter-branch

Принудительное нажатие на главный, иначе он заблокирует вашу попытку стереть вашу историю.

$> git push --force -u origin master

Удалите файл grafts.

$> rm ./.git/info/grafts

NEVERMIND

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

Ответ 4

Установив Git, вы также можете щелкнуть правой кнопкой мыши папку вашего репозитория - Git GUI здесь.

Выбрать репозиторий - визуализировать всю историю веток.

Щелкните правой кнопкой мыши требуемую историю ветвей фиксации - Reset.

Теперь у вас есть 3 варианта:

Git

После выбора выберите File - Reload.

Удалось это выяснить после выбора Revert при фиксации в GitHub Desktop, затем снова вернуться, чтобы мы вернулись к исходному коду, то просто желающие очистить эту пару Revert совершают.