J'ai un serveur privé exécutant git 1.7 Quand je
git init
un dossier, il ne crée pas de branche principale. Parce que quand je fais:
git branch
il ne liste rien. Quand je fais:
git --bare init
il crée les fichiers. Quand je tape
git branch master
ça dit:
fatal: Not a valid object name: 'master'.
git branch newbranch
Réponses:
C'est un comportement vrai et attendu. Git ne créera pas de
master
branche tant que vous n'aurez pas validé quelque chose.Un non-bare
git init
créera également les mêmes fichiers, dans un.git
répertoire caché à la racine de votre projet.C'est encore un comportement correct. Jusqu'à ce que tu t'engages, il n'y a pas de maître branche principale.
Vous n'avez pas posé de question, mais je vais répondre à la question que je supposais que vous vouliez poser. Ajoutez un ou plusieurs fichiers à votre répertoire et
git add
les préparez pour une validation. Ensuite,git commit
pour créer votre commit initial et votremaster
branche.la source
.git/HEAD
et changezrefs/heads/master
enrefs/heads/main
, mais il n'y a aucune raison de le faire. Renommez simplement votre branche après le premier commit.git checkout -b <branchname>
pour changer HEAD - vous n'avez pas besoin de modifier le fichier.Git crée une branche principale une fois que vous avez effectué votre premier commit. Il n'y a rien pour quoi avoir une branche s'il n'y a pas de code dans le référentiel.
la source
Tout d'abord, lorsque vous créez un "référentiel nu", vous n'allez pas travailler avec lui (il ne contient pas de copie de travail, donc le
git branch
commande n'est pas utile).Maintenant, la raison pour laquelle vous n'auriez pas de
master
branche même après avoir fait ungit init
est qu'il n'y a pas de commits: lorsque vous créez votre premier commit, vous aurez alors unemaster
branche.la source
git clone
pour éviter d'avoir à faire ungit init
côté récepteur.git checkout
si vous voulez que le WC reflète ce qui se trouve dans le.git
répertoire (où vous avez poussé).Vous devez vous engager au moins une fois sur master avant de créer une nouvelle branche.
la source