Создание нового репо / проекта из предыдущего клонированного проекта
Я клонировал существующий репозиторий из 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
).