Skip to main content

Remote-Repositorys verwalten

Lerne, mit Deinen lokalen Repositories auf Deinem Computer und Remote-Repositories auf GitHub zu arbeiten.

Hinzufügen eines Remoterepositorys

Verwende zum Hinzufügen eines neuen Remoterepositorys im Terminal den Befehl git remote add in dem Verzeichnis, in dem dein Repository gespeichert ist.

Der Befehl git remote add akzeptiert zwei Argumente:

  • Einen Remotenamen (beispielsweise origin)
  • Eine Remote-URL (beispielsweise https://github.com/user/repo.git)

Beispiel:

$ git remote add origin https://github.com/USER/REPO.git
# Set a new remote

$ git remote -v
# Verify new remote
> origin  https://github.com/USER/REPO.git (fetch)
> origin  https://github.com/USER/REPO.git (push)

Weitere Informationen zu der zu verwendenden URL findest du unter Informationen zu Remoterepositorys.

Problembehandlung: Das Remoterepository „origin“ ist bereits vorhanden.

Dieser Fehler bedeutet, dass du versucht hast, ein Remoterepository hinzuzufügen, dessen Name bereits in deinem lokalen Repository vorhanden ist.

$ git remote add origin https://github.com/octocat/Spoon-Knife.git
> fatal: remote origin already exists.

Du kannst das Problem wie folgt beheben:

  • Verwende einen anderen Namen für das Remoterepository.
  • Benenne das vorhandene Remoterepository um, bevor du das neue Remoterepository hinzufügst. Weitere Informationen findest du weiter unten unter Umbenennen eines Remoterepositorys.
  • Lösche das vorhandene Remoterepository, bevor du das neue Remoterepository hinzufügst. Weitere Informationen findest du weiter unten unter Entfernen eines Remoterepositorys.

Ändern der URL eines Remoterepositorys

Der Befehl git remote set-url dient zum Ändern der URL eines vorhandenen Remoterepositorys.

Tipp: Informationen zum Unterschied zwischen HTTPS- und SSH-URLs findest du unter Informationen zu Remoterepositorys.

Der Befehl git remote set-url akzeptiert zwei Argumente:

  • einen vorhandenen Remote-Namen. origin und upstream werden beispielsweise häufig verwendet.
  • eine neue URL für das Remote-Repository. Beispiel:
    • Wenn Du eine Aktualisierung auf HTTPS durchführst, sieht die URL ähnlich aus wie folgende:
      https://github.com/USERNAME/REPOSITORY.git
    • Wenn Du eine Aktualisierung auf SSH durchführst, sieht die URL ähnlich aus wie folgende:
      git@github.com:USERNAME/REPOSITORY.git

Remote-URLs von SSH auf HTTPS umstellen

  1. Öffne TerminalTerminalGit Bash.
  2. Ändere das aktuelle Arbeitsverzeichnis in das lokale Projekt.
  3. Liste die vorhandenen Remote-Repositorys auf, um den Namen des Remote-Repositorys zu erhalten, dessen URL Du ändern möchtest.
    $ git remote -v
    > origin  git@github.com:USERNAME/REPOSITORY.git (fetch)
    > origin  git@github.com:USERNAME/REPOSITORY.git (push)
  4. Ändere die URL deines Remoterepositorys mithilfe des Befehls git remote set-url von SSH in HTTPS.
    $ git remote set-url origin https://github.com/USERNAME/REPOSITORY.git
  5. Überprüfe, ob die Remote-URL geändert wurde.
    $ git remote -v
    # Verify new remote URL
    > origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
    > origin  https://github.com/USERNAME/REPOSITORY.git (push)

Wenn du das nächste Mal git fetch, git pull oder git push für das Remoterepository verwendest, wirst du zur Angabe deines GitHub-Benutzernamens und deines GitHub-Kennworts aufgefordert. Wenn Sie Git zur Eingabe Ihres Kennworts auffordert, geben Sie Ihr personal access token ein. Alternativ können Sie ein Hilfsprogramm für Anmeldeinformationen wie Git Credential Manager verwenden. Die kennwortbasierte Authentifizierung für Git wurde zugunsten sicherer Authentifizierungsmethoden entfernt. Weitere Informationen finden Sie unter „Erstellen eines personal access token“.

Du kannst ein Hilfsprogramm für Anmeldeinformationen verwenden, damit Git deinen GitHub-Benutzernamen und dein personal access token speichert und bei jeder Kommunikation mit GitHub darauf zurückgreift.

Umstellen von Remote-URLs von HTTPS auf SSH

  1. Öffne TerminalTerminalGit Bash.
  2. Ändere das aktuelle Arbeitsverzeichnis in das lokale Projekt.
  3. Liste die vorhandenen Remote-Repositorys auf, um den Namen des Remote-Repositorys zu erhalten, dessen URL Du ändern möchtest.
    $ git remote -v
    > origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
    > origin  https://github.com/USERNAME/REPOSITORY.git (push)
  4. Ändere die URL deines Remoterepositorys mithilfe des Befehls git remote set-url von HTTPS in SSH.
    $ git remote set-url origin git@github.com:USERNAME/REPOSITORY.git
  5. Überprüfe, ob die Remote-URL geändert wurde.
    $ git remote -v
    # Verify new remote URL
    > origin  git@github.com: USERNAME/REPOSITORY.git (fetch)
    > origin  git@github.com: USERNAME/REPOSITORY.git (push)

Problembehandlung: Es ist kein Remoterepository mit dem Namen „[Name]“ vorhanden.

Wenn dieser Fehler ausgegeben wird, ist das Remote-Repository, das Du ändern wolltest, nicht vorhanden:

$ git remote set-url sofake https://github.com/octocat/Spoon-Knife
> fatal: No such remote 'sofake'

Überprüfe, ob Du den Namen des Remote-Repositorys korrekt eingegeben hast.

Umbenennen eines Remoterepositorys

Verwende den Befehl git remote rename, um ein vorhandenes Remoterepository umzubenennen.

Der Befehl git remote rename akzeptiert zwei Argumente:

  • Den Namen eines vorhandenen Remoterepositorys (beispielsweise origin)
  • Einen neuen Namen für das Remoterepository (beispielsweise destination)

Beispiel

In diesen Beispielen wird davon ausgegangen, dass du beim Klonen HTTPS verwendest (wie empfohlen).

$ git remote -v
# View existing remotes
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

$ git remote rename origin destination
# Change remote name from 'origin' to 'destination'

$ git remote -v
# Verify remote's new name
> destination  https://github.com/OWNER/REPOSITORY.git (fetch)
> destination  https://github.com/OWNER/REPOSITORY.git (push)

Problembehandlung: Der Konfigurationsabschnitt „remote.[alter Name]“ konnte nicht in „remote.[neuer Name]“ umbenannt werden.

Dieser Fehler tritt auf, wenn der alte Name, den du für das Remoterepository eingegeben hast, nicht vorhanden ist.

Mit dem Befehl git remote -v kannst du überprüfen, welche Remoterepositorys vorhanden sind:

$ git remote -v
# View existing remotes
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

Problembehandlung: Das Remoterepository „[neuer Name]“ ist bereits vorhanden.

Wenn dieser Fehler ausgegeben wird, wird der Name, in den Du das Remote-Repository umbenennen möchtest, bereits verwendet. Verwende in diesem Fall entweder einen anderen Namen für das Remoterepository, oder benenne das ursprüngliche Remoterepository um.

Entfernen eines Remoterepositorys

Verwende den Befehl git remote rm, um eine Remote-URL aus deinem Repository zu entfernen.

Der Befehl git remote rm akzeptiert ein einzelnes Argument:

  • Einen Remotenamen (beispielsweise destination)

Wenn du die Remote-URL aus deinem Repository entfernst, wird lediglich die Verknüpfung zwischen lokalem Repository und Remoterepository aufgehoben. Das Remoterepository wird dadurch nicht gelöscht.

Beispiel

In diesen Beispielen wird davon ausgegangen, dass du beim Klonen HTTPS verwendest (wie empfohlen).

$ git remote -v
# View current remotes
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)
> destination  https://github.com/FORKER/REPOSITORY.git (fetch)
> destination  https://github.com/FORKER/REPOSITORY.git (push)

$ git remote rm destination
# Remove remote
$ git remote -v
# Verify it's gone
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

Hinweis: Durch git remote rm wird das Remoterepository nicht vom Server gelöscht. Der Befehl entfernt lediglich das Remoterepository und die zugehörigen Verweise aus deinem lokalen Repository.

Problembehandlung: Der Konfigurationsabschnitt „remote.[Name]“ konnte nicht entfernt werden.

Wenn dieser Fehler ausgegeben wird, ist das Remote-Repository, das Du entfernen wolltest, nicht vorhanden:

$ git remote rm sofake
> error: Could not remove config section 'remote.sofake'

Überprüfe, ob Du den Namen des Remote-Repositorys korrekt eingegeben hast.

Weiterführende Themen