remoto - git remote




Come si crea un ramo Git remoto? (12)

Crea il ramo sul tuo computer locale e attiva questo ramo:

$ git checkout -b [name_of_your_new_branch]

Spingi il ramo su github:

$ git push origin [name_of_your_new_branch]

Quando vuoi commettere qualcosa nel tuo ramo, assicurati di essere nel tuo ramo.

Puoi vedere tutti i rami creati usando:

$ git branch

Che mostrerà:

* approval_messages
  master
  master_clean

Aggiungi un nuovo telecomando per il tuo ramo:

$ git remote add [name_of_your_remote] 

Spingi le modifiche dal tuo commit nel tuo ramo:

$ git push origin [name_of_your_remote]

Aggiorna il tuo ramo quando il ramo originale dal repository ufficiale è stato aggiornato:

$ git fetch [name_of_your_remote]

Quindi devi applicare per unire le modifiche, se il tuo ramo è derivato dallo sviluppo devi fare:

$ git merge [name_of_your_remote]/develop

Elimina un ramo sul tuo filesystem locale:

$ git branch -d [name_of_your_new_branch]

Per forzare la cancellazione del ramo locale sul tuo filesystem:

$ git branch -D [name_of_your_new_branch]

Elimina il ramo su github:

$ git push origin :[name_of_your_new_branch]

Qui tutte le informazioni

Altro progetto esistente

Ho creato una filiale locale che voglio "spingere" a monte. C'è una domanda simile qui su Stack Overflow su come tracciare un ramo remoto appena creato.

Tuttavia, il mio flusso di lavoro è leggermente diverso. Per prima cosa voglio creare un ramo locale, e lo spingerò a monte solo quando sono soddisfatto e voglio condividere il mio ramo.

  • Come potrei farlo? (le mie ricerche su google non sembravano venire fuori nulla).
  • Come direi ai miei colleghi di estrarlo dal repository upstream?

AGGIORNAMENTO Con Git 2.0 c'è una risposta più semplice che ho scritto qui sotto: https://stackoverflow.com/a/27185855/109305


Semplice soluzione Git 2.0+:

A partire da Git 2.0 il comportamento è diventato più semplice :

Puoi configurare git con push.default = current per semplificarti la vita:

Ho aggiunto questo così ora posso solo spingere un nuovo ramo a monte con

$ git push -u

-u il ramo remoto con lo stesso nome. No con questa configurazione indovinerete automaticamente il riferimento remoto a git push. Dalla documentazione di git.config :

push.default

Definisce l'azione che git push dovrebbe intraprendere se non viene fornito esplicitamente un refspec.

push.default = current - spinge il ramo corrente per aggiornare un ramo con lo stesso nome sul lato ricevente. Funziona sia in flussi di lavoro centrali che non centrali.

Per me, questa è una buona semplificazione del mio flusso di lavoro giornaliero Git. L'impostazione di configurazione si occupa del caso di utilizzo "normale" in cui si aggiunge un ramo localmente e si desidera crearlo da remoto. Inoltre, posso facilmente creare branch locali da remoti semplicemente facendo git co remote_branch_name (invece di usare --set-upstream-to flag).

Conosco questa domanda e le risposte accettate sono piuttosto vecchie, ma il comportamento è cambiato in modo che ora esistano opzioni di configurazione per semplificare il flusso di lavoro.

Per aggiungere alla tua configurazione Git globale, eseguilo sulla riga di comando:

$ git config --global push.default current

Come fare attraverso il Source Tree

 1: Open SourceTree, click on Repository -> Checkout
 2 :Click on Create New Branch
 3: Select branch where from you want to get code for new branch 
 4: Give your branch name
 5: Push the branch  (by click on Push button)

Crea un nuovo ramo localmente in base al ramo corrente:

git checkout -b newbranch

Applica le modifiche come faresti normalmente. Quindi, spingerlo a monte:

git push -u origin HEAD

Questa è una scorciatoia per spingere il ramo corrente a un ramo con lo stesso nome origin e tracciarlo in modo che non sia necessario specificare l' origin HEAD in futuro.


Ecco come lo fai in eclissi attraverso Egit.

1) Vai alla vista "Esplorazione repository Git" e espandi il progetto git a cui desideri creare un ramo. Sotto Brances -> Local .. seleziona il ramo per il quale vuoi creare il ramo (Nel mio caso ho selezionato il master .. puoi selezionare un altro altro ramo se lo desideri) .. quindi fai clic destro e clicca su Crea opzione Branch .. e selezionare il checkout questa opzione di progetto e quindi fare clic sul pulsante Fine.

2) Ora dall'esploratore del progetto selezionare il progetto. Fare clic con il tasto destro del mouse su Team -> Push Branch.

Verrà creato un nuovo ramo remoto. Puoi dare il nome del ramo ai tuoi colleghi in modo che possano farlo.


Innanzitutto crei il ramo localmente:

git checkout -b your_branch

E poi per creare il ramo da remoto:

git push --set-upstream origin your_branch

Nota: questo funziona sulle versioni più recenti di git:

$ git --version
git version 2.3.0

Saluti!


Innanzitutto, devi creare il tuo ramo localmente

git checkout -b your_branch

Successivamente, puoi lavorare localmente nel tuo ramo, quando sei pronto a condividere il ramo, spingilo. Il comando successivo spinge il ramo all'origine del repository remoto e lo tiene traccia

git push -u origin your_branch

I compagni di squadra possono raggiungere il tuo ramo, facendo:

git fetch
git checkout origin/your_branch

Puoi continuare a lavorare nel ramo e premere quando vuoi senza passare argomenti a git push (il push git senza argomenti spinge il master al master remoto, your_branch local a remote your_branch, ecc ...)

git push

I compagni di squadra possono spingere al tuo ramo facendo commit e poi spingere esplicitamente

... work ...
git commit
... work ...
git commit
git push origin HEAD:refs/heads/your_branch

O rintracciare il ramo per evitare gli argomenti per git push

git checkout --track -b your_branch origin/your_branch
... work ...
git commit
... work ...
git commit
git push

La soluzione più semplice ... Drumm Roll. git versione 2.10.1 (Apple Git-78)

1) git checkout -b localBranchNameThatDoesNotExistInRemote

2) Do your changes , and go a git commit 

3) git push origin localBranchNameThatDoesNotExistInRemote --force

NB: il ramo che hai appena creato nel tuo ambiente locale e il ramo remoto non esistente in cui stai provando a spingere, devono avere lo stesso nome .


Se si desidera creare un ramo dal ramo corrente

git checkout -b {your_local_branch_name} 

vuoi un ramo da un ramo remoto, puoi provare

git checkout -b {your_local_branch_name} origin/<remote_branch_name>

Se hai finito con le modifiche puoi aggiungere il file.

git add -A or git add <each_file_names>

Quindi fai un commit localmente

git commit -m 'your commit message'

Quando si desidera passare al repository remoto

git push -u origin <your_local_branch_name>

Tutti insieme saranno

git checkout -b bug_fixes 

oppure Se si desidera creare un ramo da un ramo remoto, dire sviluppo

git checkout -b bug_fixes origine / sviluppo

È possibile passare al repository remoto tramite

git push -u origin **bug_fixes**

Ogni volta che si desidera aggiornare il ramo da qualsiasi altro ramo, dire master .

git pull origin master .


Se vuoi creare un ramo remoto senza avere quello locale, puoi farlo in questo modo:

git push origin HEAD:refs/heads/foo

Spinge qualsiasi cosa il tuo TESTO a ramificarsi, che non esisteva sul telecomando.


Volevo solo aggiungere che mentre:

git checkout -b {branchName}

Crea un nuovo ramo, controlla anche quel ramo / lo rende il tuo ramo corrente. Se, per qualche ragione, tutto ciò che vuoi fare è disconnettere un ramo ma non renderlo il tuo ramo attuale, allora dovresti usare il seguente comando:

git branch {branchName}

Nel primo comando, "checkout" rende detto ramo il tuo ramo attuale, e "-b" significa: questo ramo non esiste ancora, quindi fallo per me.


git push -u <remote-name> <branch-name> non funziona se il ramo appena creato non viene generato dallo stesso repository, cioè se non hai creato il nuovo ramo usando git checkout -b new_branch , quindi questo non funzionerà

Ad esempio, ho clonato due diversi repository localmente e ho dovuto copiare repo2 / branch1 su repo1 / e poi premerlo anch'io.

This collegamento mi ha aiutato a spingere la mia filiale locale (clonata da un altro repository) al mio repository remoto:





git-branch