在使用git将客户端的修改push到服务器上的时候,出现无法push,提示和stackoverflow上的http://stackoverflow.com/questions/2816369/git-push-error-remote-rejected-master-master-branch-is-currently-checked问题一致。

在该问题的第二个回答http://stackoverflow.com/a/2933656/1767800简单地解释了产生问题的原因以及解决问题的办法。简单地说就是因为服务器和客户端都同时checkout了同一个分支,这时git认为服务器也在对分支进行修改,为了避免冲突而不允许push。因此解决办法就是在服务器端checkout一个和客户端准备push的分支不同的分支,如果只有一个分支,可以新建一个临时的分支用于checkout,然后再删掉。