2013-02-28 14 views
5

ho capito i passi, ma sembra ingombrante, prendere bitbucket per esempio, immagino ho già un progetto chiamato prjGit: misure efficaci per creare un nuovo ramo e spingono a distanza

  1. ho ramo di un nuovo progetto da lato server (bitbucket.com), chiamato prj-bz
  2. dal locale aggiungo aggiungere un telecomando git remote add prj-bz https://blah...
  3. Allo stesso tempo, dal livello locale creo un nuovo ramo chiamato prj-bz
  4. dal locale chiamo git push prj-bz prj-bz per consentire il repo locale e quello remoto connessi.

Ho controllato alcuni libri di git ma sembra che nessuno lo copra. Un modo più efficiente per farlo?

+1

no, non esiste un modo efficace per farlo. Come pensi che questo possa essere più efficiente? –

+0

Forse il primo passaggio può essere omesso? – Mike

+0

Oh, penso di aver capito quello sbagliato. Nel passaggio 1, vuoi dire che crei un ramo su bitbucket? –

risposta

38

Generalmente, le persone di solito fanno l'una o l'altra Fork o Branch. Sembra che tu stia facendo una fork di un repository, quindi fai un ramo nella forchetta con lo stesso nome. Se stai utilizzando una richiesta di pull per reinserire i dati nel repository principale, non è necessario eseguire entrambe le operazioni. Scegli uno dei due flussi di lavoro:

  • Forcella del pronti contro termine su Bitbucket (o altro sito)
  • Clone repo git clone https://bitbucket.org/username/repo-fork.git
  • Work in quel forcella git commit -m "some work done", git push -u origin master
  • Creare una richiesta di pull per richiedere la tua modifiche reimmissione nel genitore della forcella

O

  • Clone repo principale git clone https://bitbucket.org/username/repo-fork.git
  • Crea una nuova filiale locale git checkout -b my-branch
  • Work in quel ramo git commit -m "some work done"
  • Spingere il ramogit push -u origin my-branch
  • Crea una richiesta di pull

Con il metodo branch, presumo che tu abbia i diritti per scrivere sul repository principale. In caso contrario, ti consigliamo di attenersi al metodo della forcella. Ci sono anche più flussi di lavoro. Bitbucket ha anche uno doc explaining this e uno su Atlassian's website con un po 'più di profondità sui flussi di lavoro Git.

+0

Grazie Marcus, uso il metodo ** Branch ** che hai menzionato e ha funzionato perfettamente. – Mike

+5

'git push -u origine my-branch' è il passo più importante qui –

0

Bene, se si crea un nuovo repository anziché un nuovo ramo in uno esistente, è sufficiente inserire git clone https://blah <target folder> per sostituire i passaggi 2-4.

In caso contrario, l'unica vera alternativa è la creazione di uno script semplice che accetta nome remoto, nome di ramo e git url come argomenti ed esegue i passaggi 2-4 con tali informazioni.

Problemi correlati