我克隆了一个空的存储库。我有一个空主分支。我需要分支到dev分支并在那里启动我的开发代码。后来我甚至可能不需要主分支,但需要一些稳定的分支来保持我的稳定代码。
当我使用git branch dev时,它说致命:不是有效的对象'master'。
但是当我在master中提交一个文件时,它允许我分支出来。
答案 0 :(得分:2)
要拥有分支,git要求您至少有一个提交,然后它将从其引用创建主分支。
如果您之后要删除master
,并且您已经拥有多个分支机构,则必须:
git checkout your_chosen_branch
git branch -D master
执行此操作会将HEAD
引用更新为指向your_chosen_branch
。否则你必须手动完成:
git symbolic-ref HEAD refs/heads/your_chosen_branch
答案 1 :(得分:0)
如果它只是一个提交的问题,只需创建一个虚拟文件(可能是readme
甚至更好 - .gitignore
文件)并进行第一次提交,然后分支出来。
(看起来你想要遵循一些原则,并严格遵守它,比如创建一个开发分支和所有..我的建议是不要过度,并且对事情要灵活:)。 )
答案 2 :(得分:0)
如果您真的确实不想要“主”分支,您可以转到.git目录并编辑HEAD文件,将“master”替换为您选择的任何名称。
对于克隆的空存储库,您可能希望在克隆之前在裸存储库上执行此操作。 (如果你想知道:是的,我必须这样做。)