2016-02-01 9 views
5

Ho cercato di inviare le modifiche del repository locale a github dalla riga di comando. Sono stato lontano da git per un po 'ora, quindi non ricordo alcune cose. Per l'ultima ora ho cercato di spingere il repository senza creare un repository remoto su Github.com. Per quanto mi ricordo, git push origin master/git push è sufficiente per inviare le modifiche locali e, se necessario, creare un repository sul server remoto. Tuttavia Git Push non mi ha permesso di spingere e creare automaticamente il repo.Creazione di repository Github dalla riga di comando

Quindi, per risparmiare tempo, ho creato repo remoto sul github.com e aggiungere l'URL repo remoto utilizzando

git remote add origin https://mygithubrepoUrl.com

e ha funzionato.

È necessario creare un repository remoto su Github e quindi aggiungere questo URL dalla riga di comando per eseguire le modifiche? Git non può creare automaticamente il pronti contro termine e spingere le modifiche?

+0

Sì, Credo che sia necessario, e creare il repository in remoto e quindi aggiungere 'origin' localmente è il normale flusso di lavoro. –

+0

Il seguente messaggio ha la risposta http://stackoverflow.com/questions/2423777/is-it-possibile-per-creare-a-remote-repo-on-github-da-the-cli-without-opening-br –

risposta

10

È necessario creare il repo prima di spingere, ma non c'è hub che consente di automatizzare questo per voi:

git init newRepo 
cd newRepo 
hub create 

Utilizzare l'interruttore -p-hub create per creare un repository privato. Per spingere il locale master ramo, tema:

git push -u origin HEAD 

Lo strumento può anche creare richieste di pull, aprire la pagina del progetto, controllare lo stato CI, clonare pronti contro termine esistenti specificando solo username/repo, e un paio di cose.

pagina Il progetto suggerisce aliasing git a hub (perché quest'ultimo in avanti comandi sconosciuti a git), ma io non consiglio questo, anche se solo per distinguere i comandi "a nudo" Git dal hub caramelle.

5

Le API di Github dovrebbero funzionare.

Innanzitutto creare repo utilizzando curl e API https://developer.github.com/v3/repos/#create

qualcosa di simile: curl -u 'username' https://api.github.com/user/repos -d '{"name":"repository name"}'

e quindi è possibile aggiungere a distanza e spingere come avete descritto in precedenza:

git remote add origin [email protected]:user/repository_name.git && git push origin master

+0

[Github API create] (https://developer.github.com/v3/repos/#create) afferma che mentre esistono due endpoint per la creazione di un nuovo repository (ovvero uno per ** account utente ** e uno per ** account organizzazione **), hanno abilitato solo gli account ** account organizzazione **. Esempio 'curl --user 'username' https://api.github.com/username/repos --request POST --data '{" name ":" newreponame "}' --verbose' restituisce' 404 Not Found' , mentre 'curl --user 'username' https://api.github.com/orgs/orgname/repos -d '{" name ":" newreponame "}'' restituisce '201 Created'. Utilizzare invece [hub] (https://github.com/github/hub). –