Ricerca…


Sintassi

  • git remote [-v | --verbose]
  • git remote add [-t <branch>] [-m <master>] [-f] [--[no-]tags] [--mirror=<fetch|push>] <name> <url>
  • git remote rename <old> <new>
  • git remote remove <name>
  • git remote set-head <name> (-a | --auto | -d | --delete | <branch>)
  • git remote set-branches [--add] <name> <branch>…​
  • git remote get-url [--push] [--all] <name>
  • git remote set-url [--push] <name> <newurl> [<oldurl>]
  • git remote set-url --add [--push] <name> <newurl>
  • git remote set-url --delete [--push] <name> <url>
  • git remote [-v | --verbose] show [-n] <name>…​
  • git remote prune [-n | --dry-run] <name>…​
  • git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)…​]

Aggiunta di un nuovo archivio remoto

git remote add upstream git-repository-url

Aggiunge repository git remoto rappresentato da git-repository-url come nuovo remoto denominato upstream al repository git

Aggiornamento dal repository upstream

Supponendo che tu imposti l'upstream (come in "setting un repository upstream")

git fetch remote-name
git merge remote-name/branch-name

Il comando pull combina un fetch e merge .

git pull

Il pull con il comando --rebase flag combina un fetch e un rebase invece di merge .

git pull --rebase remote-name branch-name

ls-remoti

git ls-remote è un unico comando che consente di interrogare un repository remoto senza doverlo clonare / recuperare prima .

Elencherà i riferimenti / le teste e i riferimenti / tag di detto repository remoto.

Vedrete a volte refs/tags/v0.1.6 e refs/tags/v0.1.6 refs/tags/v0.1.6^{} : il ^{} per elencare il tag annotato dereferenziato (cioè il commit a cui il tag sta puntando)

Dal momento che git 2.8 (marzo 2016), puoi evitare quella doppia entrata per un tag ed elencare direttamente i tag con riferimenti non autorizzati con:

git ls-remote --ref

Può anche aiutare a risolvere l'url reale usato da un repository remoto quando hai " url.<base>.insteadOf " impostazioni di configurazione.
Se git remote --get-url <aremotename> restituisce https://server.com/user/repo e hai impostato git config url.ssh://[email protected]:.insteadOf https://server.com/ :

git ls-remote --get-url <aremotename>
ssh://[email protected]:user/repo

Eliminazione di un ramo remoto

Per eliminare un ramo remoto in Git:

git push [remote-name] --delete [branch-name]

o

git push [remote-name] :[branch-name]

Rimozione di copie locali di rami remoti eliminati

Se un ramo remoto è stato cancellato, il tuo repository locale deve essere avvisato di potare il riferimento ad esso.

Per eliminare rami cancellati da un telecomando specifico:

git fetch [remote-name] --prune

Per eliminare rami cancellati da tutti i telecomandi:

git fetch --all --prune

Mostra informazioni su un telecomando specifico

Trasmetti alcune informazioni su un remoto noto: origin

git remote show origin

Stampa solo l'URL del telecomando:

git config --get remote.origin.url

Con 2.7+, è anche possibile fare, che è probabilmente meglio di quello precedente che utilizza il comando config .

git remote get-url origin

Elenca i telecomandi esistenti

Elenca tutti i telecomandi esistenti associati a questo repository:

git remote

Elenca tutti i telecomandi esistenti associati a questo repository in dettaglio, inclusi gli URL fetch e push :

git remote --verbose

o semplicemente

git remote -v

Iniziare

Sintassi per la spinta a un ramo remoto

git push <remote_name> <branch_name>

Esempio

git push origin master

Impostare Upstream su un nuovo ramo

È possibile creare un nuovo ramo e passare ad esso utilizzando

git checkout -b AP-57

Dopo aver usato git checkout per creare un nuovo ramo, dovrai impostare l'origine upstream da utilizzare

git push --set-upstream origin AP-57

Dopo di ciò, puoi usare git push mentre sei su quel ramo.

Modifica di un repository remoto

Per modificare l'URL del repository a cui il tuo telecomando deve puntare, puoi usare l'opzione set-url , in questo modo:

git remote set-url <remote_name> <remote_repository_url>

Esempio:

git remote set-url heroku https://git.heroku.com/fictional-remote-repository.git

Modifica dell'URL Git Remote

Controlla il telecomando esistente

git remote -v 
# origin https://github.com/username/repo.git (fetch)
# origin https://github.com/usernam/repo.git (push)

Modifica dell'URL del repository

git remote set-url origin https://github.com/username/repo2.git
# Change the 'origin' remote's URL

Verifica il nuovo URL remoto

git remote -v
# origin  https://github.com/username/repo2.git (fetch)
# origin  https://github.com/username/repo2.git (push)

Rinominare un telecomando

Per rinominare il telecomando, usare command git remote rename

Il comando git remote rename accetta due argomenti:

  • Un nome remoto esistente, ad esempio: origine
  • Un nuovo nome per il telecomando, ad esempio: destinazione

Ottieni il nome remoto esistente

git remote
# origin

Controlla il telecomando esistente con l'URL

git remote -v 
# origin https://github.com/username/repo.git (fetch)
# origin https://github.com/usernam/repo.git (push)

Rinomina telecomando

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

Verifica il nuovo nome

git remote -v 
# destination https://github.com/username/repo.git (fetch)
# destination https://github.com/usernam/repo.git (push)

=== Errori possibili ===

  1. Impossibile rinominare la sezione di configurazione 'remote. [Old name]' a 'remote. [Nuovo nome]'

    Questo errore indica che il telecomando che hai provato con il vecchio nome remoto ( origine ) non esiste.

  1. Remote [nuovo nome] esiste già.

    Il messaggio di errore è auto esplicativo.

Imposta l'URL per un telecomando specifico

È possibile modificare l'URL di un telecomando esistente tramite il comando

git remote set-url remote-name url 

Ottieni l'URL per un telecomando specifico

È possibile ottenere l'url per un telecomando esistente utilizzando il comando

git remote get-url <name>

Di default, questo sarà

git remote get-url origin



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow