Создание нового репо / проекта из предыдущего клонированного проекта

Я клонировал существующий репозиторий из Git (Bitbucket) и скопировал этот файл в новое место. Теперь я хотел перенести это в пустой репозиторий в Bitbucket как новый проект с изменениями, связанными с этим проектом. Это произошло:

git remote add origin
fatal: remote origin already exists

После этого я проверил версию git (с $ git remote -v), и она указывает на исходное клонированное репозиторий git из последнего проекта. Есть ли способ удалить историю git, чтобы я мог выполнить git init и перенести проект в новое хранилище? Если я использую rm -rf .git, это повредит оригинальному клонированному репозиторию git? Или я могу инициализировать новый проект и отправить его в новое пустое хранилище?

3 ответа

Описание

Причина, почему вы получаете это

fatal: remote origin already exists

это потому что origin это локальная версия удаленного репозитория. Думайте об этом как о папке с именем origin,

пример

Просто измените имя при добавлении удаленного

git remote add <name> <url>

Вы можете использовать любое имя, которое вам нравится, если оно не нарушает условия, применяемые файловой системой.

Кроме того, вы можете удалить remote происхождение.

git remote rm origin

Примечание. Это приведет к удалению локальной копии удаленного хранилища с именем origin из вашей файловой системы!

Ссылка

ГИТ-пульт

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

$ cd new_project
$ rm -rf .git
$ git init .
$ git add *
$ git commit -m "Initial commit of my fork"
$ git remote add … 
$ git push

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

$ cd original_repo
$ git remote add -f myfork <bitbucketurl>
$ git push myfork 

После того, как это будет сделано, вы можете удалить исходное происхождение из вашего клона или просто откатиться из битбакета. Это сохранило бы оригинальную историю.

Вы можете просто добавить новый пульт (git remote add new_origin destination) или переименовать фактическое (git remote rename origin old_origin) или удалите актуальный (git remote rm actual_destination).

Другие вопросы по тегам