通过SSH和HTTPS拒绝github推送权限



git和Github的新手。一位作者在一次问题讨论中建议我提出撤回请求。我在我的个人机器上用推荐的HTTPS链接克隆了他的回购(而不是到另一个Github回购),并提交了我的编辑。现在我正在尝试生成一个pull请求,但我不确定如何生成。我四处寻找的解决方案都没有帮助。下面是我的Bash-git命令的输出。

User@MachineName ODKWK52 /c/websites/github/repo (master)
$ git status
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)
nothing to commit, working directory clean
User@MachineName ODKWK52 /c/websites/github/repo (master)
$ git remote -v
origin  ssh://git@github.com/repo.git (fetch)
origin  ssh://git@github.com/repo.git (push)
User@MachineName ODKWK52 /c/websites/github/repo (master)
$ ssh -T git@github.com
Permission denied (publickey).
User@MachineName ODKWK52 /c/websites/github/repo (master)
$ eval "$(ssh-agent -s)"
Agent pid 7180
User@MachineName ODKWK52 /c/websites/github/repo (master)
$ ssh-add ~/.ssh/id_rsa_github
Identity added: /c/Users/User/.ssh/id_rsa_github 
(/c/Users/User/.ssh/id_rsa_github)
User@MachineName ODKWK52 /c/websites/github/repo (master)
$ ssh -T git@github.com
Hi GithubUser! You've successfully authenticated, 
but GitHub does not provide shell access.
User@MachineName ODKWK52 /c/websites/github/repo (master)
$ git push --dry-run origin master
ERROR: Permission to repo.git denied to GithubUser.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
User@MachineName ODKWK52 /c/websites/github/repo (master)
$ git remote set-url origin https://GithubUser@github.com/repo.git
User@MachineName ODKWK52 /c/websites/github/repo (master)
$ git push --dry-run origin master
Password for 'https://GithubUser@github.com':
remote: Permission to repo.git denied to GithubUser.
fatal: unable to access 'https://GithubUser@github.com/repo.git/': 
The requested URL returned error: 403

这个错误似乎在这个官方页面上得到了解决,但那里的信息没有帮助,因为我的SSH密钥从未在其他地方使用过(我生成它只是为了做这个推送),而且故障发生在HTTPS和SSH上。正如您所看到的,SSH测试运行成功,所以我不确定为什么会遇到这个错误。

同样,这不是我的Github回购。作者建议我提出一个提取请求,我想知道该怎么做。我必须将项目克隆到另一个Github repo中并推送吗?(我在这里看到了这个建议)我不明白为什么这是必要的。

为了打开pull请求,您需要"分叉"repo。您可以从GitHub的web界面执行此操作。

一旦你创建了一个分叉,你就可以将其添加为本地克隆的远程:

$ git remote add my-fork <uri-for-my-fork>

然后你可以把你的分支推到你的分支:

$ git push my-fork my-feature-branch

然后,您将能够使用web界面从分叉上的分支向原始回购上的master创建一个pull请求。

GitHub在这里提供了详细的文档:https://help.github.com/articles/using-pull-requests/

相关内容

  • 没有找到相关文章

最新更新