I
I
ImVeryStupid2020-07-06 16:02:36
git
ImVeryStupid, 2020-07-06 16:02:36

How to properly push a site from localhost to a remote server in a non-bare repository?

upd: I want to edit the code on my local PC. Push changes to the remote server. Refresh a remote (not local) web page and see the result.

If you create a regular (without the --bare parameter) repository on a remote server and try to push into it, you will get an 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 yo
remote: error: arranged to update its work tree to match what you pushed in some
remote: error:
remote: error:
remote: error: To squelch this message and still keep the default behavior, set
remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'


What does "it will make the index and work tree inconsistent with what you pushed, and will require 'git reset --hard' to match the work tree to HEAD." mean?
Why is it not recommended to set "remote repository's receive.denyCurrentBranch config variable to ignore"?
And what does "unless yo arranged to update its work tree to match what you pushed in some other way" mean?

Answer the question

In order to leave comments, you need to log in

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question