web-dev-qa-db-de.com

Kann ein Projekt mehrere Ursprünge haben?

Kann ein Projekt zwei (oder mehr) "Ursprünge" in Git haben?

Ich möchte ein einzelnes Projekt auf beide github und einen Heroku Server verschieben.

Dieser Fehler tritt insbesondere beim Hinzufügen des Github-Repository auf:

$ git remote add Origin https://github.com/Company_Name/repository_name.git
fatal: remote Origin already exists.
115
Chris Dutrow

Sie können so viele Fernbedienungen haben, wie Sie möchten, aber nur eine Fernbedienung namens "Origin" haben. Die Remote namens "Origin" ist in keiner Weise speziell, außer dass es sich um die von Git erstellte Standard-Remote handelt, wenn Sie ein vorhandenes Repository klonen. Sie können eine zweite Fernbedienung konfigurieren, Push to/pull von dieser Fernbedienung aus und einige Verzweigungen einrichten, um Verzweigungen von dieser Fernbedienung anstelle von Origin zu verfolgen.

Fügen Sie stattdessen eine Fernbedienung namens "github" hinzu:

$ git remote add github https://github.com/Company_Name/repository_name.git

# Push master to github
$ git Push github master

# Push my-branch to github and set it to track github/my-branch
$ git Push -u github my-branch

# Make some existing branch track github instead of Origin
$ git branch --set-upstream other-branch github/other-branch
190
meagar

Als Randbemerkung für alle, die später auf diese Frage stoßen, ist es möglich, Origin Push auf mehreren git-Repository-Servern gleichzeitig zu haben.

Sie können dies erreichen, indem Sie mit dem folgenden Befehl eine weitere URL zur Origin-Fernbedienung hinzufügen. 

git remote set-url --add Origin ssh://[email protected]/user/myproject.git

Hier ist ein Beispielprojekt mit mehreren Fernbedienungen, GitHub und GitLab:

  1. Remote Repo für GitHub hinzufügen

    $ git remote add github https://github.com/Company_Name/repository_name.git
    
  2. Remote Repo für GitLab hinzufügen

    $ git remote add gitlab https://gitlab.com/Company_Name/repository_name.git
    
  3. Jetzt haben Sie mehrere Fernbedienungen im Projekt. Überprüfen Sie nochmals mit git remote -v

    $ git remote -v
    github https://github.com/Company_Name/repository_name.git (fetch)
    github https://github.com/Company_Name/repository_name.git (Push)
    gitlab https://gitlab.com/Company_Name/repository_name.git (fetch)
    gitlab https://gitlab.com/Company_Name/repository_name.git (Push)
    
  4. Wie pushen Sie zu mehreren Repositorys?

    $ git Push github && git Push gitlab
    
18
dihardmg

sie können Ihrem Repository ein anderes Remote-Konto hinzufügen, indem Sie anstelle von Origin einen anderen Namen angeben. Sie können Namen wie Origin2 . Verwenden, damit Ihr Befehl git als geändert werden kann 

git remote add Origin2 https://github.com/Company_Name/repository_name.git
0
git remote add Origin2 https://github.com/Company_Name/repository_name.git

und für den Push-Einsatz:

git Push -u Origin2 master
0
Lovepreet Kaur