推送到服务器时Git错误

时间:2011-08-17 03:48:34

标签: git git-push

我在远程服务器上有一个文件夹,我们已添加到git。

git init
git add .
git commit -m "Initial commit"

然后我们将存储库拉到我当地的MacBook。然后我添加一个文件index.js,添加到git,并提交。当我尝试将修改后的repo推回服务器时,问题就来了。我收到一个疯狂的错误:

  

拒绝更新签出的分支:refs / heads / master   默认情况下,拒绝更新非裸存储库中的当前分支,因为它会使索引和工作树与您推送的内容不一致,并且需要'git reset --hard'才能将工作树与HEAD匹配。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

应该使用--bare选项初始化您计划推送到的远程存储库,以防止Git创建工作目录。最简单的方法是初始化一个新的裸仓库,更新MacBook的遥控器以指向新位置(应该是以.git结尾的文件夹)并推送。

答案 1 :(得分:0)

这是因为您正在尝试推送到非裸仓库(具有工作目录的仓库)。工作目录本质上是您“结帐”和实时编辑的文件的位置。当您推送到非裸仓库时,会出现错误消息中描述的情况。

如果您仍想编辑macbook和远程服务器中的文件,一个简单的解决方案是使用git init --bare创建第三个回购。你可以从另外两个回购中推送到这个回购。

相关问题