Заменить репозиторий GitHub с сохранением проблем, вики и т. Д.

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

Как лучше всего сделать это, не испортив код или GitHub?

17
задан Andrew Marshall 8 July 2014 в 17:22
поделиться

1 ответ

Поскольку git push --force origin master не сохраняет кодовые коммиты из старого проекта, я думаю, что на этот вопрос нужен другой ответ. Я уже сделал ответ для проекта Android Studio, но он не сильно отличается от использования исключительно Git.

Я назову старый проект на GitHub, который вы хотите заменить MyProject.

Сделайте резервную копию вашего нового проекта

Переименуйте ваш текущий проект (или скопируйте его в новое место и удалите папку с исходным именем проекта. Мы клонируем старую версию проекта из GitHub в это место.)

Клонировать старый проект из GitHub

Перейдите в каталог, в котором вы хотите разместить свой проект, и запустите

git clone https://github.com/username/repo.git

Замените username на ваше имя пользователя GitHub и repo с вашим именем хранилища.

Удалить все старые файлы

Вы можете попробовать

git rm -r *

Но если это не сработает (так как у меня это не сработало), то удалите вручную их с помощью rm или файлового менеджера. Однако не удаляют папку .git и .gitignore.

Затем, если вы удалили их вручную, вам нужно обновить git.

git add -u
git commit -m "deleting old files before adding updated project"

Добавьте новые файлы

Скопируйте все файлы из вашего нового проекта, для которого вы ранее сделали резервную копию. Теперь дайте git знать, что вы хотите добавить их в репозиторий.

git add .
git commit -m "new updated project"

Отправьте свои изменения в GitHub

git push

Теперь ваш новый проект будет в GitHub, но история коммитов старого проекта все еще будет доступна.

9
ответ дан 30 November 2019 в 12:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: