Git / GitHub推送到别人的仓库

时间:2017-01-11 10:13:50

标签: git github permissions push

我创建了一个存储库,然后由我的一位同事分叉。 我们昨天一起工作,我们在计算机上克隆了他的分叉

git clone https://github.com/hisname/hisfork.git

并在本地分支上工作,跟踪由

创建的非主远程分支
git checkout -b localbranch origin/hisdevelopmentbranch

我试图将这些更改推进

git push origin localbranch:hisdevelopmentbranch
认为git会询问他的用户名和密码。 我得到的错误是

Counting objects: 13, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (13/13), done.
Writing objects: 100% (13/13), 2.33 KiB | 0 bytes/s, done.
Total 13 (delta 9), reused 0 (delta 0)
remote: Resolving deltas: 100% (9/9), completed with 6 local objects.
To https://github.com/hisname/hisfork.git
 ! [remote rejected] localbranch -> hisdevelopmentbranch (permission denied)
error: failed to push some refs to 'https://github.com/hisname/hisfork.git'

即使在之后他将我作为合作者添加到他的前叉。 我寻找答案,但我能说明问题。通常我会看到像ssh clone而不是url,配置文件,但我觉得它更容易!

修改

.....$ git remote -v
origin  https://github.com/hisname/hisfork.git (fetch)
origin  https://github.com/hisname/hisfork.git (push)

1 个答案:

答案 0 :(得分:1)

很可能您自己的用户正在使用github进行身份验证。

您可以修改您的git遥控器以指定您的同事的github用户, 像这样:

git remote set-url origin git+ssh://hisname@github.com/hisname/hisfork.git

OR

git remote set-url origin https://hisname@github.com/hisname/hisfork.git

OR

您可以让您的同事将您添加为"合作者"到他的回购分支Like so: Inviting collaborators on Github

编辑: 正如OP在评论中所提到的,您还需要接受邀请进行协作才能进行协作(上面链接的文档中的步骤#8)。