致命的:不是有效的对象名称:'master'

时间:2012-02-06 15:15:02

标签: git

我有一台运行git 1.7的私人服务器 当我

git init 

它不创建主分支的文件夹。 我这样做的原因:

git branch 

它没有列出任何内容。 当我这样做时:

git --bare init

它会创建文件。 当我输入

git branch master 

它说:

fatal: Not a valid object name: 'master'.

7 个答案:

答案 0 :(得分:235)

  

当我git init文件夹时,它不会创建主分支

这是事实和预期的行为。在你提交之前,Git不会创建master分支。

  

当我git --bare init时,它会创建文件。

非裸git init也会在项目根目录的隐藏.git目录中创建相同的文件。

  

当我输入git branch master时,它表示“致命:不是有效的对象名称:'master'”

这又是正确的行为。在您提交之前,不是主分支。

你没有问过问题,但我会回答我以为你要问的问题。将一个或多个文件添加到您的目录,并git add它们以准备提交。然后git commit创建您的初始提交和master分支。

答案 1 :(得分:19)

Git在您完成第一次提交后创建一个主分支。如果存储库中没有代码,那就没有任何分支。

答案 2 :(得分:15)

首先,当您创建“裸存储库”时,您将不会使用它进行任何工作(它不包含工作副本,因此git branch命令无用)。

现在,即使在执行master之后您也没有git init分支的原因是没有提交:当您创建第一个提交时,您将拥有{{1分支。

答案 3 :(得分:9)

在创建新分支之前,您需要在master上至少提交一次。

答案 4 :(得分:6)

将 Superfly Jon 的评论复制到答案中:

要在不提交 master 的情况下创建新分支,您可以使用:

git checkout -b <branchname>

答案 5 :(得分:1)

  1. 确保您在正确的目录中(有时我们在彼此内部获得2个具有相同名称的文件夹可能不在服务器中但我只有一次)。
  2. 你需要提交然后一切都会正常工作。

答案 6 :(得分:-1)

请尝试在 master 分支中创建任何文件并提交。然后创建其他分支。它应该可以工作。