0

可能重复:
为什么我不能将我的代码推送到 github?

我正在尝试将 origin master 推送到 git hub,但我一直被拒绝,它提示我输入用户名和密码,我确信它是正确的。

这是我得到的错误

To https://github.com/anderskitson/omrails.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/anderskitson/omrails.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again.  See the
'Note about fast-forwards' section of 'git push --help' for details.
4

3 回答 3

1

先做

git pull

那么你可以做

git push

你被拒绝的原因是因为在服务器上有你本地没有的提交,所以你需要在推送之前合并它们。

颠覆也会发生同样的事情:你需要svn up在做svn commit.

于 2012-12-31T00:13:05.797 回答
1

拉一下。您的远程分支位于本地分支之前。

git pull

于 2012-12-31T00:13:34.847 回答
1

github 上有一些您在本地存储库中没有的提交。推送您的更改将替换 github 上已经存在的更改,并且这些提交将丢失。

解决方案是拉入 github 更改并将它们合并到本地存储库中,然后您可以将更改推送到 github 而不必担心丢失这些更改。

你解决这个问题的方法是运行:

git pull

如果该命令通知您任何冲突,请修复它们,然后添加并提交合并的文件。大多数时候你不会遇到任何冲突,所以你不必在这里做任何事情。

然后再次尝试推送:

git push
于 2012-12-31T00:18:57.940 回答