"remote:error:refusing to update checked out branch:refs/heads/master"的解决办法

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

[remote rejected] master -> master (branch is currently checked out)

错误原型

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 [email protected]:/var/git.server/.../web

! [remote rejected] master -> master (branch is currently checked out)

error: failed to push some refs to ‘[email protected]:/var/git.server/.../web‘

解决办法:

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

[receive]     denyCurrentBranch = ignore

无法查看push后的git中文件的原因与解决方法

在初始化远程仓库时最好使用

git --bare init

而不要使用:git init

git init 和git --bare init 的具体区别:http://blog.haohtml.com/archives/12265

=================================================

如果使用了git init初始化,则远程仓库的目录下,也包含work tree,当本地仓库向远程仓库push时, 如果远程仓库正在push的分支上(如果当时不在push的分支,就没有问题), 那么push后的结果不会反应在work tree上,  也即在远程仓库的目录下对应的文件还是之前的内容。

解决方法:

必须得使用命令 git reset --hard 才能看到push后的内容.

研究了很久不得其解,然后找到一条命令凑合着能用了: 登录到远程的那个文件夹,使用

git config --bool core.bare true

就搞定了。

时间: 2024-10-05 07:36:10

"remote:error:refusing to update checked out branch:refs/heads/master"的解决办法的相关文章

remote:error:refusing to update checked out branc

参考网上的GIt服务器配置流程(http://blog.csdn.net/ice520301/article/details/6142503) 遇到了 http://www.cnblogs.com/cosiray/archive/2012/06/01/2530967.html 这样的问题. 出现问题的原因是: csdn上的配置流程中初始化服务器上的git目录用的是命令"git init --bare" 而正确的用法应该是"git --bare init",仅仅是顺序

git报错error: src refspec refs/heads/master does not match any.

$ git pusherror: src refspec refs/heads/master does not match any.error: failed to push some refs 出错解决方案: 首先先试试注释 1.本地git仓库目录下为空 2.本地仓库add后未commit 3.git init错误 解决: 1.控制面板打开文件夹选项  打开隐藏文件和文件夹显示 2.到本地仓库目录下查看是否有.git文件夹--无 则git init 3.看.git文件夹下是否有之前提交的文件-

MySQL ERROR : The used command is not allowed with this MySQL version 解决办法

目的:向MySql数据库导入.txt文件,通过load命令来实现 输入如下命令,报错: 修改命令,依旧报错: 可能原因(from mysql reference manual): If LOAD DATA LOCALis disabled, either in the server or the client, a client that attempts to issue such a statement receives the fol-lowing error message: ERROR

【转】bootstrap模态框(modal)使用remote方法加载数据,只能加载一次的解决办法

http://blog.csdn.net/coolcaosj/article/details/38369787 bootstrap的modal中,有一个remote选项,可以动态加载页面到modal-body中 有两种方法,一种是使用链接,另一种就是使用脚本. 1 使用链接 <a href="user/userDetail.jsp" data-toggle="modal" data-target="#myModal">打开对话框<

《OpenGL编程指南第七版》学习——编译时提示“error C2381: “exit” : 重定义;__declspec(noreturn) 不同”错误的解决办法

解决办法一. #if defined(_WIN32) # ifndef GLUT_BUILDING_LIBextern _CRTIMP void __cdecl exit(int); 上面是glut.h中对exit的使用,意思是如果没有定义宏?GLUT_BUILDING_LIB,就使用它的exit,那我们就在项目的属性--预处理器 里定义这个宏,这样就不执行glut.h中的exit了,而只执行stdlib.h中的exit.这样也就不会冲突了.对了,还要在附加依赖项里手动加上?glut32.lib

VC++编译错误error C2065: “HANDLE”: 未声明的标识符及添加winbase.h后提示winbase.h(243): error C2146: 语法错误: 缺少“;”(在标识符“Internal”的前面)的解决办法

问题描述: VC++程序编译时提示错误:error C2065: "HANDLE": 未声明的标识符等众多错误提示,如下所示: error C2065: "HANDLE": 未声明的标识符 error C2146: 语法错误: 缺少";"(在标识符"hFind"的前面) error C2065: "hFind": 未声明的标识符 error C2065: "INVALID_HANDLE_VALUE

cluster_state:fail error clusterdown hash slot not served redis集群启动失败 解决办法

在虚拟机上架设了redis集群,三台虚拟机,一共六个节点,每个虚拟机上分别使用 6379,6380端口.由于死机导致非法关闭,然后集群就起不来了,报error  clusterdown hash slot not served的错误. 用redis-cli -c 登录集群,用cluster nodes 查看发现cluster_known_nodes:1 也就是说只找到了一个其他节点,所以需要将丢失的节点手工加进去,于是用cluster meet ip 端口的方式将其他主机加进去,中间还因为写错了

error MSB6006: “CL.exe”已退出,代码为X —— 的解决办法

错误 : error MSB6006: “CL.exe”已退出,代码为X . 解决方法: 1.有少可能是执行目录引起的. 参考 http://bbs.csdn.net/topics/370064083 2.杀毒软件 打开windows任务管理器,看看进程中有没有杀毒软件在执行,还有一些进程,比如阿里巴巴反钓鱼安全服务. 结束这些进程,再进行编译即可.

error: qrc_qml.obj: requires unsupported dynamic reloc R_ARM_REL32; recompile with -fPIC解决办法

使用qtcreator加androidndk编译项目时报错: error: qrc_qml.obj: requires unsupported dynamic reloc R_ARM_REL32; recompile with -fPIC error: undefined reference to '__dso_handle' 解决方案,建一个头文件,代码如下,包含到项目里: #define NS_EXPORT extern "C" {/* * To work around http: