Git push 出错以及server端没有显示push后的文件的解决方法

Git: push 出错的解决 master-> master (branch is currently checkedout)

在使用GitPush代码到数据仓库时,提示如下错误:

[remote rejected]master -> master (branch is currently checkedout)
remote: error: refusing to update checked out branch:refs/heads/master
remote: error: By default, updating the current branch in anon-bare repository
remote: error: is denied, because it will make the index and worktree inconsistent
remote: error: with what you pushed, and will require 'git reset--hard' to match
remote: error: the work tree to HEAD.
remote: error:

...

...

...

 

 

这是由于git默认拒绝了push操作,需要进行设置,修改.git/config添加如下代码:

   [receive]
   denyCurrentBranch = ignore

 

在初始化远程仓库时最好使用 git--bare init   而不要使用:gitinit

   如果使用了gitinit初始化,则远程仓库的目录下,也包含worktree,当本地仓库向远程仓库push时,  如果远程仓库正在push的分支上(如果当时不在push的分支,就没有问题), 那么push后的结果不会反应在worktree上,  也即在远程仓库的目录下对应的文件还是之前的内容,必须得使用git reset--hard才能看到push后的内容.

你可能感兴趣的:(善假于物)