Как я могу удалить коммиты git, которые уже были сброшены, но все еще отображаются в истории? - PullRequest
2 голосов
/ 05 мая 2019

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

Я отправил коммиты в среду DEV Pantheon, развернутую как в среде TEST, так и в среде LIVE. Позже я сделал полный сброс к определенному коммиту и был вынужден вернуться к исходной точке. Перемотка вперед, когда я снова клонировал репо, я все еще вижу коммиты, которые, как мне показалось, стерли из истории.

Я не вижу их в терминале с git log, но мне нравится использовать GitKraken, чтобы визуально видеть мою историю мерзавцев, и там они появляются постоянно. Я попытался стереть локальный репо, потому что думал, что это просто локальная вещь - в среде DEV Пантеона они исчезли после силового толчка.

Ничто, кажется, решает это для меня. Пожалуйста помоги! Мой OCD мешает мне игнорировать его, продолжать выполнять работу и добавлять коммиты. Мне нужно, чтобы моя история показывала только тот коммит, в котором сейчас находится HEAD, а коммиты перед ним пропадают из поля зрения.

Вот как это выглядит, когда я открываю репо с помощью GitKraken —— » Снимок экрана

1 Ответ

0 голосов
/ 05 мая 2019

Git отслеживает все коммиты, когда-либо сделанные в его базе данных (внутри папки .git), до тех пор, пока они в конечном итоге не будут собраны мусором, когда они больше не используются.Визуальные инструменты, такие как GitKraken, обычно показывают все коммиты, достижимые через именованную ветку или тег, независимо от того, является ли ветвь или тег локальным или из известного удаленного репозитория.

Что вы, вероятно, хотите сделать, это удалить ветви или тегикоторые связаны с теми коммитами, которые вам больше не интересны. Это приведет к тому, что они больше не будут отображаться в графических инструментах, хотя они будут оставаться в вашей базе данных .git до GC'ed (это, как правило, то, что вы хотите: избегатьвизуальные отвлекающие факторы, с которыми вы сталкиваетесь, но храните данные, если вам когда-нибудь понадобится их восстановить).

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

...