不能推或拉到Github

时间:2012-05-04 08:37:50

标签: git github push

当我尝试拉动时:

error: cannot open .git/FETCH_HEAD: Permission denied

当我尝试推送或push -u origin master

master -> master (non-fast-forward)
error: failed to push some refs to 'git@github.com:xxxxxxxx/xxxxxxxxxx.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes before pushing again.  See the 'Note about
-forwards' section of 'git push --help' for details.

2 个答案:

答案 0 :(得分:7)

阅读“man git-push”他们提到“git pull”应该足以解决这个问题,但是因为你得到“错误:无法打开.git / FETCH_HEAD:Permission denied”你是否创建了使用sudo克隆分支?如果是这样,您的用户可能无法读取您的文件。仔细检查您的用户帐户是否可以读取.git / FETCH_HEAD文件。

答案 1 :(得分:3)

您的本地副本可能与远程集线器不同步。

从/向github repo拉/推时,这是一个很好的指导原则:

  1. git stash - 确保您的更改被藏匿,并且您的副本将恢复为与远程同步的最后一次提交。
  2. git pull - 从远程拉
  3. git stash pop - 将您的更改合并到最新的源代码
  4. git mergetool - 如果存在冲突,则需要在合并更改之前执行此操作。
  5. git commit - 在本地仓库中提交更改
  6. git push - 将您的更改推送到远程。