Я хочу ответить на вопрос, как я получил скопированный проект для работы, на тот случай, если кто-то хочет сделать это со своим проектом в будущем. Спасибо @PSGuy за общее представление о том, как это сделать.
Моими целями для этого были:
- Создать новый репозиторий, который не будет разветвляться из проекта I используется для изучения Jekyll
- Сохранение той же функциональности и большей части кода, что и в исходном хранилище
- Избавьтесь от моей ОЧЕНЬ загроможденной истории git и разрешите будущим коммитам следовать " Стиль Squa sh и Rebase"для удобства чтения
I не необходимо:
- Сохранить мою текущую git историю
- Сохранить структуру ветви моего исходного репо
Имея все это в виду, я начал с создания копии всей папки с использованием команда:
cp -r oldRepo/ newRepo/
Затем я вошел в новый каталог и запустил локальный сервер для проекта, чтобы убедиться, что ничего не сломано из коробки. После этого я удалил всю предыдущую git информацию о проекте, запустив:
rm -rf .git/
Затем я сделал несколько небольших изменений в документации и добавил лицензию MIT для проекта. , Со всем на месте я сделал новый пустой репозиторий на Github и скопировал удаленный URL (что-то вроде https://github.com/usrName/myProject.git
). Затем из командной строки в новом каталоге я просто инициализировал новое репо git, добавил пульт в github, создал новый коммит и отправил его на удаленный сервер.
git init
git remote add origin https://github.com/usrName/myProject.git
git add .
git commit -m "initial commit"
git push origin master
Оттуда все работает, как задумано, и я могу развиваться дальше.
Следует отметить, что когда вы копируете папку, она создает копию любой ветви, которую вы извлекли в то время по умолчанию. Затем, удалив .git/
, вы избавитесь от любой истории проекта, поэтому убедитесь, что это именно то, что вы хотите! Скопированная ветвь станет Master
в новом проекте, и другие ветки не будут сохранены, если вы будете следовать этому методу.