Принятый ответ хорош, но немного сложен для подражания.Вот тот же ответ, но немного слаще.
Как говорит Тилман Фогель, гистограммы - это просто репозитории, и поэтому этот подход работает как для репозиториев github, так и для гистологов.
Предположим, что есть только одинверсия, которая содержит пароль, который вы не хотите показывать.Вы зарегистрировались в новой версии с удаленным паролем и хотите избавиться от предыдущей версии.Вы должны быть в состоянии адаптировать этот процесс, если есть несколько коммитов, показывающих пароль.
Первое, что нужно сделать, это восстановить на вашем локальном компьютере (не в github).Для этого начните с локального клонирования.Страница gist на github должна показать вам, как создать приватный клон, если вы нажмете на URL приватного клона.Что-то вроде:
git clone git@gist.github.com:421xxx1.git gist-421xxx1
Это дает вам локальную копию, которую вам нужно перебазировать (то есть обыгрывать версии).
cd gist-421xxx1
git rebase -i eexxaa^
Где eeccaa (первая) версия, содержащаяпароль.Вы можете получить этот номер из колонки редакций главной страницы.^ Требуется.Команда означает «позвольте мне изменить версии с eexxaa на последнюю, в интерактивном режиме.Команда открывает редактор, заполненный командой в каждой строке для каждой версии репо.По умолчанию команда «выбрать» означает «использовать или сохранить эту версию».
Первые строки в редакторе должны выглядеть примерно так:
pick eexxaa <- the version with the password
pick ffxxbb <- the first version without the password
Измените это на
pick eexxaa
squash ffxxbb
Т.е. измените слово «pick» на «squash» наверсия без пароля.Это попросит ребаз, чтобы раздавить новую (без пароля) версию в старую (с переносом пароля), по существу удалив версию eexxaa.Очевидно, что ваши версии будут отличаться от eexxaa или ffxxbb. Буквально нигде не используйте eexxaa или ffxxbb!
Как отмечает @kand, вы должны squash
каждую версию, содержащую пароль.
InРедактор сохраните и выйдите (если это vi: x).Перебазировка должна теперь открыть новый редактор, показывающий сообщения о фиксации для двух версий и запрашивающий одно комбинированное сообщение о фиксации.Суть в том, что эти сообщения, скорее всего, будут пустыми, но вам нужно что-то добавить сюда, иначе ребаз прервется.Введите сообщение, сохраните его и выйдите, и перезапуск должен завершиться.
Теперь у вас есть хранилище без версии, содержащей пароль.Чтобы вернуть это к сути дела, используйте:
git push -f
Это приведет к изменениям в репозитории github.Нажмите «Обновить», и вы сможете проверить в браузере, что версия с ошибками вышла из колонки правок справа.
Вот и все!