2013-10-01 23 views
7

Sto clonando un singolo ramo da un repository e creando un tag in uno script python. I comandi sono i seguenti.tag git: fatale: Impossibile risolvere "HEAD" come riferimento valido

git clone -b master --single-branch <repository adress> 

git tag -a testag -m 'test' 

Si clona con successo, ma quando si tratta di aggiungere il tag, si rompe con il seguente errore:

fatal: Failed to resolve 'HEAD' as a valid ref. 
+1

Che cosa significa ' stato git 'dire dopo il tuo clone? – FlyingFoX

+0

# sul ramo master niente da commettere, directory di lavoro pulita – Ahmad

+0

Cosa dice 'cat .git/HEAD' dopo il clone? – FlyingFoX

risposta

16

Ho avuto lo stesso problema. È necessario eseguire il commit prima di codificare

git commit 

perché si inseriscono tag su commit. Quindi, quando non ci sono commit (come nella tua situazione), non puoi creare un tag.

3

Se si ha accesso al repository remoto

 
cd /path/to/remote/repository 
git config --bool core.bare true 
+2

Che cosa fa esattamente? –

+0

In base a questa pagina http://bitflop.com/document/111 "Un repository" scarno "in Git contiene solo le informazioni sul controllo della versione e nessun file di lavoro (nessuna struttura) e non contiene il file .git speciale sottodirectory, invece contiene tutti i contenuti della sottodirectory .git direttamente nella directory principale stessa. " – raffi

13

mi sono imbattuto nello stesso problema ed è stato in grado di risolverlo cambiando da

git tag -a testtag -m 'test' 

a

git tag -a testtag -m "test" 

stavo correndo in Windows 7. Spero che questo aiuti :-)

+0

Utilizzando Cmder su W10, questo è ciò che effettivamente ha aiutato. –

4

Ho avuto lo stesso problema. Ho clonato da un repository nudo e ho provato a usare 'git tag' in quel repository clonato, ed è lì che ho ricevuto l'errore. Per risolverlo ho dovuto almeno uno spingere al massimo prima di poter iniziare a taggare. Spero che questo ti aiuti.

2

Ho anche affrontato git tag: fatal: Failed to resolve 'HEAD' as a valid ref problema quando mi mancava -m nel seguente comando. (Durante la creazione del tag)

git tag -a testtag 'test' 

cambiando a

git tag -a testtag -m 'test' 

risolto il problema

Problemi correlati