2009-05-05 19 views
178

Ho appena iniziato a utilizzare git con github. Ho seguito le loro istruzioni e ho riscontrato errori nell'ultimo passaggio. Sto controllando una directory esistente che al momento non è controllata da fonti di dati (progetto di circa una settimana). Oltre a questo, il mio caso d'uso dovrebbe essere una buona idea per il mulino.Errore master origine origine sul nuovo repository

Ecco cosa sta succedendo:

$ git push origin master 
error: src refspec master does not match any. 
fatal: The remote end hung up unexpectedly 
error: failed to push some refs to '[email protected]:{username}/{projectname}.git' 

istruzioni di Github:

Global setup: 

    Download and install Git 
    git config --global user.name "Your Name" 
    git config --global user.email {username}@gmail.com 

Next steps: 

    mkdir projectname 
    cd projectname 
    git init 
    touch README 
    git add README 
    git commit -m 'first commit' 
    git remote add origin [email protected]:{username}/{projectname}.git 
    git push origin master 
+3

Sembra che il commit iniziale non abbia funzionato per qualsiasi motivo. Git log mi ha aiutato a vedere se il commit funziona o no. Ho avuto successo provandolo di nuovo il giorno successivo. Grazie! – sutee

+1

Se non si aggiungono file, non si esegue il commit o non si esegue git init, si ottiene sempre questo tipo di problemi. Pertanto, esegui sempre 'git status' per vedere se tutto è OK. – Raduken

+0

errore simile durante la creazione di un ramo in un repository git appena creato dal codice esistente. Risolto l'errore clonando il repository git. – user553620

risposta

137

Il messaggio di errore porta alla conclusione che non si dispone di una filiale master nel repository locale. Spingete il vostro ramo di sviluppo principale (git push origin my-local-master:master che lo cambierà a master su github) o effettuerete prima un commit. Non puoi spingere un repository completamente vuoto.

+10

Ho avuto il problema "repository vuoto", poiché la guida pertinente a cui fa riferimento GitHub (http://beans.seartipy.com/2008/12/09/setting-up-ruby-on-rails-projects-with-git- e-github /) non ha menzionato il comando "git commit -m" first commit "". Una volta che l'ho usato, tutto andava bene! –

+3

Mi ero appena dimenticato di impegnare le mie modifiche. –

+0

Quando dici 'git push origine my-local-master: master' cosa significa' my-local-master'?Se ho un nome di CSS-pix della mia cartella di cui voglio spingere – Nofel

1

ho risolto il mio problema ....

non

sicuro di quello che il problema era, ma utilizzando l'interfaccia GitX a commettere i miei file messi in scena, poi ...

$ git push origin master 

lavorato ...

sto avendo lo stesso problema ...

creata una nuova cartella aggiunta nel file di modello Bort ...

$ git commit -m 'first commit' 

$ git remote add origin [email protected]:eltonstewart/band-of-strangers.git 

$ git push origin master 

allora ottengo lo stesso errore ...

error: src refspec master does not match any.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to '[email protected]:eltonstewart/band-of-strangers.git'

4

ho avuto lo stesso errore, come Bombe detto che avevo nessun ramo locale di nome maestro nel mio config, anche se ha fatto git branch lista un ramo di nome maestro ...

per risolvere il problema è sufficiente aggiungere questo al vostro .git/config

[branch "master"] 
    remote = origin 
    merge = refs/heads/master 

Kinda hacky ma non il lavoro

1
error: failed to push some refs to '[email protected]:{username}/{projectname}.git' 

A meno che non si sta generalizzando il messaggio di errore, sembra che si mette letteralmente [email protected]:{username}/{projectname}.git come repo Git remoto. Devi inserire {username} con il tuo nome utente GitHub e {projectname} con il nome del tuo progetto.

186

Stavo avendo lo stesso problema e poi mi ha colpito in testa perché non avevo effettivamente aggiunto i miei file di progetto.

git add -A 
git commit -am "message" 
git push origin master 
+0

Sì, avevo provato quanto segue, ma la soluzione per me è stato quello di utilizzare il comando: git add * sintassi corretta è: git add. –

+3

ha funzionato per me! –

+18

Vorrei che il messaggio di errore git sarebbe più facile da capire. –

0

ho mistankly mettere uno spazio dopo il - così invece di -m ho avuto - m Solo qualcosa da cercare.

0

Penso che nella versione precedente di git, dovresti prima impegnare almeno un file, e poi "spingere il master di origine" ancora una volta.

0

ottimo .. è il problema con la directory vuota solo nient'altro. Ho risolto il problema creando un file binario in ogni directory e quindi aggiunto.

2

Per risolvere effettivamente il problema, ho utilizzato il seguente comando per mettere in scena tutti i miei file sul commit.

$ git add . 
$ git commit -m 'Your message here' 
$ git push origin master 

Il problema che avevo era che il comando -u in git add in realtà non aggiungere i nuovi file e il git add comando -A non è supportato sulla mia installazione di git. Così come detto in questa discussione il commit che stavo cercando di mettere in scena era vuoto.

+0

ha funzionato per me! Ho provato con troppi comandi e nulla è cambiato ... ma questa era la soluzione per me! – karensantana

0

Iniziale aggiungi & commit ha funzionato come un fascino. Immagino sia solo questione di comprendere la metodologia di Git di gestire un progetto all'interno del repository.

Dopo che sono riuscito a spingere i miei dati direttamente senza problemi.

1
cd app 

git init 

git status 

touch test 

git add . 

git commit -a -m"message to log " 

git commit -a -m "message to log" 

git remote add origin 

git remote add origin [email protected]:cherry 

git push origin master:refs/heads/master 

git clone [email protected]:cherry test1 
1

avuto lo stesso problema di un minuto fa e poi ha risolto il tutto

creare un repository in github chiamato wordpress ...

cd wordpress 
git init 
git add -A 
git commit -am “WordPress 3.1.3″ or any message 
git remote add origin [email protected]:{username}/wordpress.git 
git push -u origin master 

questo dovrebbe lavorare per risolvere il problema refspec

+0

Grazie al suo funzionamento per me .. posso sapere qual è la differenza tra "git add". e "git add -A" – user4342532

+0

nessuna differenza se si è su v 2.x conta solo se si è sulla tabella di controllo 1.x per ref futuro: http://stackoverflow.com/a/26039014/640727 –

26

Ho avuto lo stesso problema. Ho cancellato la cartella .git poi seguito i seguenti comandi

  1. $ git init
  2. $ git add .
  3. $ git remote add origin [email protected]:project/project.git
  4. $ git commit -m "Initial version"
  5. $ git push origin master
3

assicurarsi che siete su un ramo, almeno nel ramo principale

Tipo:

git branch 

si dovrebbe vedere:

ubuntu-user: ~/git/curcuma-releng ramo $ git

* (no branch) 
master 

quindi digitare:

git checkout master 

quindi tutte le modifiche si adatteranno al ramo principale (o al ramo u scelto)

1

Ho avuto lo stesso problema. Ho erroneamente creato una directory nella macchina in minuscolo. Una volta cambiato il caso, il problema è stato risolto (ma ho perso le mie 1.5 ore :() Verificare il nome della directory e il nome del repository remoto è lo stesso

6

Ho appena avuto lo stesso problema durante la creazione del mio primo repository Git. ha avuto un errore di battitura nella creazione remota dell'origine Git - risulta che non ho inserito il nome del mio repository in maiuscolo.

git remote add origin [email protected]:Odd-engine 

Per prima cosa ho rimosso il vecchio telecomando utilizzando

git remote rm origin 

Poi ho ricreato l'origine, assicurandosi che il nome del mio origine è stato digitato esattamente allo stesso modo la mia origine era scritto.

git remote add origin [email protected]:Odd-Engine 

Nessun errore! :)

1

Sembra che questa domanda abbia già un certo numero di risposte, ma valuterò con la mia poiché non ho visto nessuno che risolva il problema che ho avuto.

Ho riscontrato questo errore anche su un nuovo repository github. Si scopre che l'utente che stavo spingendo non aveva accesso push. Per qualche ragione, questo genera un errore "ERRORE: repository non trovato" invece di una sorta di errore di accesso.

In ogni caso, spero che questo aiuti l'anima povera che si imbatte nello stesso problema.

9

Ho lo stesso problema. ha risolto il mio problema Se inizi il tuo git. quello che dovete fare su Terminal

1) git add .

2) git commit -m "first commit"

Invio a bitbucket

3) git push -u origin --all # pushes up the repo and its refs for the first time

+0

Questo ha funzionato per io grazie – Esqarrouth

+0

Esq, benvenuto :) –

0

Ho appena incontrato questo problema, e sembrava di essere causato dal mio non aggiungendo un messaggio di commit personalizzato sopra il messaggio di commit predefinito (ho capito, perché scrivere "initial commit", quando chiaramente dice la stessa cosa nel testo generato da Git sotto di esso).

Il problema risolto quando ho rimosso la directory .git, re-inizializzato la directory di progetto per Git, ha aggiunto nuovamente il telecomando GitHub, aggiunto tutti i file alla nuova fase, eseguito con un messaggio personale sopra il messaggio generato automaticamente e spinto all'origine/master.

0

Quando si crea un repository su Github, viene aggiunto un file README.md al repository e poiché questo file potrebbe non essere presente nella directory locale o potrebbe avere contenuto diverso, git push non funzionerà. Per risolvere il problema che ho fatto:

git pull origin master 
git push origin master 

Questa volta ha funzionato da quando ho avuto il file README.md.

0

Prima del primo commit, provare ad aggiungere un file come readme.txt. Ciò "costringerà" il repository remoto a creare il master del ramo nel caso in cui non esista. Ha funzionato per me.

0

Questa è una domanda molto vecchia ma per tutte le persone nuove che finiranno qui come me. Questa soluzione è solo per

error: src refspec master does not match any. 

errore per il nuovo repository creato

È necessario aggiungere la

git config user.email "your email" 
git config user.name "name" 

Solo dopo l'aggiunta di e-mail e il nome aggiungere file a Git e commettere

git add . 
git commit -m "message" 

Funzionerà come il fascino

-1

Ho avuto lo stesso problema, alcuni utenti hanno risposto a questo. Prima di spingere devi avere il tuo primo impegno. Ora per i nuovi utenti ho creato una serie di semplici passaggi. Prima di allora è necessario installare git ed eseguire in linea di comando:

  • git config user.email "la tua e-mail"
  • git config user.name "nome"

I passaggi per la creazione di un repository remoto (io uso dropbox come repository remoto):

1. create a directory in Dropbox (or on your remote server) 
2. go to the Dropbox dir (remote server dir) 
3. type git command: git init --bare 
4. on your local drive create your local directory 
5. go to local directory 
6. type git command: git init 
7. add initial files, by typing git command:: git add <filename> 
8. type git command: git commit -a -m "initial version" (if you don't commit you can't do the initial push 
9. type git command: git remote add name <path to Dropbox/remote server> 
10. git push name brach (for first commit the branch should be master) 
0

ho questo errore di troppo, ho messo un commit per non spingere progetto vuoto come un sacco di gente, ma non funziona

Il problema era lo ssl, y mettere il prossimo

git config --system http.sslverify false

E dopo che tutto funziona bene :)

git push origin master

0

ho avuto lo stesso problema/error.I stava facendo git push -u origin master invece i appena fatto git push origin master e ha funzionato.

Problemi correlati