Начать новый репозиторий из текущей ветки - PullRequest
2 голосов
/ 30 марта 2012

Играя с моим веб-приложением, я добавил файлы, содержащие пароли, в мое git-репо. С тех пор я удалил их, но я хотел бы запустить новое git-репо, в котором нет коммитов, когда были включены пароли (я изменил пароли, просто хотел начать заново).

Можно ли как-нибудь захватить git-репо, не захватывая всю историю? Или я должен просто скопировать папку и запустить новое git-репо в скопированной папке? Как мне начать новый репозиторий git, просто удалите папку .git и затем снова запустите git init?

Ответы [ 2 ]

5 голосов
/ 30 марта 2012

Вы правы, если вы знаете, что не хотите никакой истории, просто удалите папку .git и снова запустите git init. Другой вариант, если вы хотите сохранить свою историю, это следовать этому превосходному руководству Github по удалению конфиденциальных данных.

2 голосов
/ 30 марта 2012

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

Вы можете создать «мелкий клон» хранилища, используя опцию -d (--depth) для git clone. Например:

git clone --depth 1 file:///path/to/your/repo

В этом случае вам необходимо использовать file://, поскольку git будет игнорировать параметр -d при использовании простого пути.

Если вы предпочитаете сохранить историю изменений, вы можете переписать свой репозиторий, чтобы удалить файлы, содержащие пароли. Взгляните на git filter-branch и, в частности, на раздел «Удаление файла из каждого коммита» в Pro Git .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...