Git推或拉在远程服务器上不起作用

时间:2013-02-24 18:34:17

标签: git version-control github git-push git-pull

我正在关注Dan Eden's Github workflow guide。当我尝试使用git push -u origin master从我的遥控器推送我的更改到Github时,我遇到了一个问题。我已经将所有文件添加到舞台并提交了它们,当我使用上面的命令时,它会返回:

To git@github.com:tomoakley/5-lines.git
! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'git@github.com:tomoakley/5-lines.git'
hint: Updates were rejected because the tip of your current branch is behind 
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

所以我尝试使用git pull,正如它建议的那样,它会返回:

git: 'pull' is not a git command. See 'git --help'.

Did you mean this?
    shell

我已经联系了我的网络主机,他们说这不是Git安装的问题,而是我的ssh密钥问题(使用ssh -T git@github.com返回正常的身份验证消息),所以它可以'是的。我还联系了正在调查的Github。 Github的支持人员告诉我使用我正在做的SSH agent forwarding

关于我的服务器和git的一些细节:

  • git --version:git version 1.7.12
  • git --exec-path:/ usr / local / libexec / git-core

感谢任何回答的人:)

1 个答案:

答案 0 :(得分:0)

This answer对类似的问题建议使用

修复/ usr / local / libexec目录的权限
sudo chmod a+rx /usr/local/libexec

不确定它是否适用于您的情况。

另一种选择是将GIT_EXEC_PATH变量添加到.bashrc中(将其添加到底部):

export GIT_EXEC_PATH=/usr/local/libexec/git-core