简体   繁体   中英

fatal: Not a valid object name: 'master'

I have a private server running git 1.7 When I

git init 

a folder it doesn't create a master branch. Cause when i do:

git branch 

it doesn't list anything. When I do:

git --bare init

it creates the files. When I type

git branch master 

it says:

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

When I git init a folder it doesn't create a master branch

This is true, and expected behaviour. Git will not create a master branch until you commit something.

When I do git --bare init it creates the files.

A non-bare git init will also create the same files, in a hidden .git directory in the root of your project.

When I type git branch master it says "fatal: Not a valid object name: 'master'"

That is again correct behaviour. Until you commit, there is no master branch.

You haven't asked a question, but I'll answer the question I assumed you mean to ask. Add one or more files to your directory, and git add them to prepare a commit. Then git commit to create your initial commit and master branch.

Git creates a master branch once you've done your first commit. There's nothing to have a branch for if there's no code in the repository.

First off, when you create a "bare repository", you're not going to be doing any work with it (it doesn't contain a working copy, so the git branch command is not useful).

Now, the reason you wouldn't have a master branch even after doing a git init is that there are no commits: when you create your first commit, you will then have a master branch.

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

copying Superfly Jon's comment into an answer:

To create a new branch without committing on master , you can use:

git checkout -b <branchname>
  1. Make sure that you are in the correct directory (sometimes we get 2 folders inside each other having the same name may be not in servers but I had that once).
  2. You need to commit then everything will work just fine.

Not a traditional answer but I have a solution for my case too. For this exact same issue, I noticed this issue occured when I created another repository in an already existing repository.

So if you cloned a repo and then git init again, it'll cause this issue. Then you have to delete the whole folder and clone it again. Thanks.

This is because you have not committed anything yet.
First, you have to use git add. or git add <file-name> , then you have to use git commit -m "committed successfully"
now you can create a new branch.

please try to create any file in master branch and commit.Then create other branch . It should work.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM