2

当我尝试拉动时:

error: cannot open .git/FETCH_HEAD: Permission denied

当我尝试 push 或 a 时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.
4

2 回答 2

7

通读“man git-push”,他们提到“git pull”应该足以解决这个问题,但是由于您收到“错误:无法打开.git/FETCH_HEAD:权限被拒绝”,您是否可能创建了使用 sudo 分支?如果是这样,您的用户可能无法读取您的文件。仔细检查您的用户帐户是否可以读取文件 .git/FETCH_HEAD。

于 2012-05-04T08:47:25.363 回答
3

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

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

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