Ik heb een privéserver met git 1.7
Wanneer ik
git init
een map maakt het geen master branch.
Want als ik dat doe:
git branch
het vermeldt niets.
Als ik dat doe:
git --bare init
het maakt de bestanden aan.
Als ik typ
git branch master
er staat:
fatal: Not a valid object name: 'master'.
Antwoord 1, autoriteit 100%
Als ik een map
git init
maak, wordt er geen master branch gemaakt
Dit is waar en verwacht gedrag. Git maakt geen master
branch totdat je iets commit.
Als ik
git --bare init
doe, worden de bestanden aangemaakt.
Een niet-bare git init
zal ook dezelfde bestanden maken, in een verborgen .git
directory in de hoofdmap van je project.
Als ik
git branch master
typ, staat er “fatal: Not a valid object name: ‘master'”
Dat is weer correct gedrag. Totdat je commit, is er geen masterbranch.
Je hebt geen vraag gesteld, maar ik zal de vraag beantwoorden waarvan ik aannam dat je die wilde stellen. Voeg een of meer bestanden toe aan je directory, en git add
ze om een commit voor te bereiden. Dan git commit
om je initiële commit en master
branch te maken.
Antwoord 2, autoriteit 8%
Git maakt een master-branch nadat je je eerste commit hebt gedaan. Er is niets om een branch voor te hebben als er geen code in de repository zit.
Antwoord 3, autoriteit 5%
Ten eerste, als je een “bare repository” aanmaakt, ga je er geen werk mee doen (het bevat geen werkkopie, dus het git branch
commando is niet nuttig).
De reden dat je geen master
branch zou hebben, zelfs niet nadat je een git init
hebt gedaan, is dat er geen commits zijn: wanneer je je eerste commit aanmaakt, zal dan een master
branch hebben.
Antwoord 4, autoriteit 5%
Je moet minstens één keer committen op master voordat je een nieuwe branch aanmaakt.
Antwoord 5, autoriteit 2%
Superfly Jon’s opmerking kopiëren naar een antwoord:
Om een nieuwe branch te maken zonder te committen op master
, kun je gebruiken:
git checkout -b <branchname>
Antwoord 6
probeer een willekeurig bestand aan te maken in de master branch en commit. Maak dan een andere branch aan. Het zou moeten werken.