0

I already have a Git repository on my computer. I want to setup a remote repository for that in my computer for example in /path/to/remote.
So I used git initto initiate an empty repository. Then I used this command:

$ git remote add test "file:///path/to/remote/.git/"

And then tried:

$ git push -u test --all

But that results error:

remote: error: refusing to update checked out branch: refs/heads/master
remote: error: By default, updating the current branch in a non-bare repository
remote: error: is denied, because it will make the index and work tree inconsistent
remote: error: with what you pushed, and will require 'git reset --hard' to match
remote: error: the work tree to HEAD.
remote: error:
remote: error: You can set 'receive.denyCurrentBranch' configuration variable to

remote: error: 'ignore' or 'warn' in the remote repository to allow pushing into

remote: error: its current branch; however, this is not recommended unless you
remote: error: arranged to update its work tree to match what you pushed in some

remote: error: other way.
remote: error:
remote: error: To squelch this message and still keep the default behaviour, set

remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.
To file:///path/to/remote/.git/
 ! [remote rejected] master -> master (branch is currently checked out)

How I can solve this problem?

Edit:

As must of answers of this question offer, I tried to Push to a Non-Checked-Out Branch and problem solved.

Community
  • 1
  • 1
hasanghaforian
  • 13,858
  • 11
  • 76
  • 167
  • 1
    possible duplicate of [Git push error '\[remote rejected\] master -> master (branch is currently checked out)'](http://stackoverflow.com/questions/2816369/git-push-error-remote-rejected-master-master-branch-is-currently-checked) – ChrisGPT was on strike Aug 23 '15 at 19:26

1 Answers1

6

Make sure that the remote repository is a bare repository

git init --bare

Then you can push to it

git push -u file:///path/to/remote/ --all
Hamza Abbad
  • 564
  • 3
  • 15
  • thank you, but I do not want to push to a repository that has no working directory. – hasanghaforian Aug 23 '15 at 20:12
  • Well, if you don't really want a bare repository and do want to push, what about following the warning "set 'receive.denyCurrentBranch' configuration variable to 'ignore' or 'warn' in the remote repository to allow pushing into its current branch; however, this is not recommended unless you arranged to update its work tree to match what you pushed in some other way." – David Neiss Aug 24 '15 at 01:15