Недоступно the requested url returned error 403

If you're having trouble cloning a repository, check these common errors.

HTTPS cloning errors

There are a few common errors when using HTTPS with Git. These errors usually indicate you have an old version of Git, or you don’t have access to the repository.

Here’s an example of an HTTPS error you might receive:

> error: The requested URL returned error: 401 while accessing
> https://github.com/USER/REPO.git/info/refs?service=git-receive-pack
> fatal: HTTP request failed
> Error: The requested URL returned error: 403 while accessing
> https://github.com/USER/REPO.git/info/refs
> fatal: HTTP request failed
> Error: https://github.com/USER/REPO.git/info/refs not found: did you run git
> update-server-info on the server?

Check your Git version

There’s no minimum Git version necessary to interact with GitHub, but we’ve found version 1.7.10 to be a comfortable stable version that’s available on many platforms. You can always download the latest version on the Git website.

Ensure the remote is correct

The repository you’re trying to fetch must exist on GitHub.com, and the URL is case-sensitive.

You can find the URL of the local repository by opening the command line and
typing git remote -v:

$ git remote -v
# View existing remotes
> origin  https://github.com/ghost/reactivecocoa.git (fetch)
> origin  https://github.com/ghost/reactivecocoa.git (push)

$ git remote set-url origin https://github.com/ghost/ReactiveCocoa.git
# Change the 'origin' remote's URL

$ git remote -v
# Verify new remote URL
> origin  https://github.com/ghost/ReactiveCocoa.git (fetch)
> origin  https://github.com/ghost/ReactiveCocoa.git (push)

Alternatively, you can change the URL through our
GitHub Desktop application.

Provide an access token

To access GitHub, you must authenticate with a personal access token instead of your password. For more information, see «Creating a personal access token.»

If you are accessing an organization that uses SAML SSO and you are using a personal access token (classic), you must also authorize your personal access token to access the organization before you authenticate. For more information, see «About authentication with SAML single sign-on» and «Authorizing a personal access token for use with SAML single sign-on.»

Check your permissions

When prompted for a username and password, make sure you use an account that has access to the repository.

Tip: If you don’t want to enter your credentials every time you interact with the remote repository, you can turn on credential caching. If you are already using credential caching, please make sure that your computer has the correct credentials cached. Incorrect or out of date credentials will cause authentication to fail.

Use SSH instead

If you’ve previously set up SSH keys, you can use the SSH clone URL instead of HTTPS. For more information, see «About remote repositories.»

Error: Repository not found

If you see this error when cloning a repository, it means that the repository does not exist or you do not have permission to access it. There are a few solutions to this error, depending on the cause.

Check your spelling

Typos happen, and repository names are case-sensitive. If you try to clone git@github.com:user/repo.git, but the repository is really named User/Repo you will receive this error.

To avoid this error, when cloning, always copy and paste the clone URL from the repository’s page. For more information, see «Cloning a repository.»

To update the remote on an existing repository, see «Managing remote repositories».

Checking your permissions

If you are trying to clone a private repository but do not have permission to view the repository, you will receive this error.

Make sure that you have access to the repository in one of these ways:

  • The owner of the repository
  • A collaborator on the repository
  • A member of a team that has access to the repository (if the repository belongs to an organization)

Check your SSH access

In rare circumstances, you may not have the proper SSH access to a repository.

You should ensure that the SSH key you are using is attached to your personal account on GitHub. You can check this by typing
the following into the command line:

$ ssh -T git@github.com
> Hi USERNAME! You've successfully authenticated, but GitHub does not
> provide shell access.

If the repository belongs to an organization and you’re using an SSH key generated by an OAuth App, OAuth App access may have been restricted by an organization owner. For more information, see «About OAuth App access restrictions.»

For more information, see Adding a new SSH key to your GitHub account.

Check that the repository really exists

If all else fails, make sure that the repository really exists on GitHub.com!
If you’re trying to push to a repository that doesn’t exist, you’ll get this error.

Error: Remote HEAD refers to nonexistent ref, unable to checkout

This error occurs if the default branch of a repository has been deleted on GitHub.com.

Detecting this error is simple; Git will warn you when you try to clone the repository:

$ git clone https://github.com/USER/REPO.git
# Clone a repo
> Cloning into 'repo'...
> remote: Counting objects: 66179, done.
> remote: Compressing objects: 100% (15587/15587), done.
> remote: Total 66179 (delta 46985), reused 65596 (delta 46402)
> Receiving objects: 100% (66179/66179), 51.66 MiB | 667 KiB/s, done.
> Resolving deltas: 100% (46985/46985), done.
> warning: remote HEAD refers to nonexistent ref, unable to checkout.

To fix the error, you’ll need to be an administrator of the repository on GitHub.com.
You’ll want to change the default branch of the repository.

After that, you can get a list of all the available branches from the command line:

$ git branch -a
# Lists ALL the branches
>   remotes/origin/awesome
>   remotes/origin/more-work
>   remotes/origin/new-main

Then, you can just switch to your new branch:

$ git checkout new-main
# Create and checkout a tracking branch
> Branch new-main set up to track remote branch new-main from origin.
> Switched to a new branch 'new-main'

Решение ошибки remote: Permission to user/repo denied to user/other-repo. fatal: unable to access user/repo: The requested URL returned error: 403

Дата: 27.03.2017

В данном уроке рассмотрим варианты решения данной оишбки:

remote: Permission to user/repo denied to user/other-repo.
fatal: unable to access user/repo: The requested URL returned error: 403

Возникает она чаще всего у новичков при попытке выполнить команду:

$ git push

Пример ошибки на скриншоте ниже.

git-permission-to-denied-to-error-403.jpg

Данная ошибка возникает довольно часто при работе с Git в терминале Windows. Суть ошибка довольно таки простая, но почему-то в интернете постоянно создаются темы с вопросом на данную тему и нет внятного ответа на русском языке.

Ошибка говорит нам о том, что мы пытаемся отправить данные в чужой репозиторий. И о том, что текущий пользователь Git не имеет прав для отправки данных в указанный в команде репозиторий.

Существует два способа решить данную ошибку:


Вариант 1. Дать текущему пользователю права для работы с репозиторием

Данный способ подойдет, если вы являетесь владельцем обеих учетных записей указанных в ошибке. Необходимо зайти на GitHub под именем того пользователя, в чей репозиторий вы не можете отправить данные. В настройках репозитория указать необходимого соавтора. Ему на почту отправится приглашение, которое необходимо подтвердить, перейдя по ссылке в письме.

github-repo-config.jpg

После этого вы сможете работать с репозиторием как со своим и ошибка больше не появится.


Вариант 2. Назначить в системе текущим пользователем Git ту учетную запись, в которую не можете отправить данные

Для этого необходимо перейти в Панель управления Windows. Выбрать отображение в виде категорий.

win-panel.jpg

Перейти в раздел “Учетные записи пользователей и семейная безопасность”. Далее в раздел “Диспетчер учетных данных”. В самом низу будет блок “Общие учетные данные”. Нажмите в нем ссылку “Удаление из хранилища”.

delete-git-config.jpg

После этого при попытке выполнить команду:

$ git push -u origin master

Терминал запросит у вас пароль от учетной записи на Github в чей репозиторий вы пытаетесь отправить данные.

После ввода пароля система установит данного пользователя как основного и будет использовать его в дальнейшем при работе с Git.


Надеюсь данный пост поможет вам решить ошибку, с которой я разбирался почти сутки.

git

github


Не забудьте сказать спасибо. Поставьте лайк!

While working with Github you may face that, Git is saying 403 when trying to perform the git push origin master command. This fatal error occurs because password authentication for accessing Github’s private repository has been disabled. The error looks like,

fatal: unable to access 'https://github.com/username/location.git/': The requested URL returned error: 403

If you are struggling with the error here is a quick solution for you.

Step 1: Create Personal Access Token on Github

  • Log in to your GitHub account
  • Click on the Profile logo on the top right corner
  • Click on Settings
  • Then, Click on Developer settings for the left sidebar
  • Next, Click on Personal access tokens for the left sidebar
  • After that, Click on Generate new token
  • Give your token a descriptive name on the Note field
  • Select Expiration time and preferred scopes
  • Click on Generate token
  • Finally, you can copy that token and use it to authenticate. You can use the token instead of a password for Git over HTTPS or can use it to authenticate to the API over Basic Authentication.

Step 2: Use Personal Access Token for Authentication

Using HTTPS URL

Personal access tokens can only be used for HTTPS Git operations. Once you have a token, you can enter it instead of your password when performing Git operations over HTTPS. For the existing remote repository, you need to update the remote URL by using,

$ git remote set-url origin https://[githubtoken]@github.com/[username]/[repositoryname].git
$ git push origin master

Or, while cloning any repository,

$ git clone https://github.com/username/repo.git
Username: Enter your username
Password: Enter your access token
Using SSH

For performing Git operation you just need to change the URL. First, make sure your SSH keys are correctly set up. Then, To update the URL you have to run

$ git remote set-url origin git@github.com:[username]/[repositoryname].git
$ git push origin master

Thank you for reading the article. Hope following the steps properly will solve your problem.

But if still, you are facing a problem to generate or use your Personal Access Token and perform Git Operations you can read this article with details step by step process.

HTTPS cloning errors

There are a few common errors when using HTTPS with Git. These errors usually indicate you have an old version of Git, or you don’t have access to the repository.

Here’s an example of an HTTPS error you might receive:

> error: The requested URL returned error: 401 while accessing
> https://github.com/USER/REPO.git/info/refs?service=git-receive-pack
> fatal: HTTP request failed
> Error: The requested URL returned error: 403 while accessing
> https://github.com/USER/REPO.git/info/refs
> fatal: HTTP request failed
> Error: https://github.com/USER/REPO.git/info/refs not found: did you run git
> update-server-info on the server?

Check your Git version

There’s no minimum Git version necessary to interact with GitHub, but we’ve found version 1.7.10 to be a comfortable stable version that’s available on many platforms. You can always download the latest version on the Git website.

Ensure the remote is correct

The repository you’re trying to fetch must exist on GitHub.com, and the URL is case-sensitive.

You can find the URL of the local repository by opening the command line and
typing git remote -v:

$ git remote -v
# View existing remotes
> origin  https://github.com/ghost/reactivecocoa.git (fetch)
> origin  https://github.com/ghost/reactivecocoa.git (push)

$ git remote set-url origin https://github.com/ghost/ReactiveCocoa.git
# Change the 'origin' remote's URL

$ git remote -v
# Verify new remote URL
> origin  https://github.com/ghost/ReactiveCocoa.git (fetch)
> origin  https://github.com/ghost/ReactiveCocoa.git (push)

Alternatively, you can change the URL through our
GitHub Desktop application.

Provide an access token

To access GitHub, you must authenticate with a personal access token instead of your password. For more information, see «Creating a personal access token.»

If you are accessing an organization that uses SAML SSO and you are using a personal access token (classic), you must also authorize your personal access token to access the organization before you authenticate. For more information, see «About authentication with SAML single sign-on» and «Authorizing a personal access token for use with SAML single sign-on.»

Check your permissions

When prompted for a username and password, make sure you use an account that has access to the repository.

Tip: If you don’t want to enter your credentials every time you interact with the remote repository, you can turn on credential caching. If you are already using credential caching, please make sure that your computer has the correct credentials cached. Incorrect or out of date credentials will cause authentication to fail.

Use SSH instead

If you’ve previously set up SSH keys, you can use the SSH clone URL instead of HTTPS. For more information, see «About remote repositories.»

Error: Repository not found

If you see this error when cloning a repository, it means that the repository does not exist or you do not have permission to access it. There are a few solutions to this error, depending on the cause.

Check your spelling

Typos happen, and repository names are case-sensitive. If you try to clone git@github.com:user/repo.git, but the repository is really named User/Repo you will receive this error.

To avoid this error, when cloning, always copy and paste the clone URL from the repository’s page. For more information, see «Cloning a repository.»

To update the remote on an existing repository, see «Managing remote repositories».

Checking your permissions

If you are trying to clone a private repository but do not have permission to view the repository, you will receive this error.

Make sure that you have access to the repository in one of these ways:

  • The owner of the repository
  • A collaborator on the repository
  • A member of a team that has access to the repository (if the repository belongs to an organization)

Check your SSH access

In rare circumstances, you may not have the proper SSH access to a repository.

You should ensure that the SSH key you are using is attached to your personal account on GitHub. You can check this by typing
the following into the command line:

$ ssh -T git@github.com
> Hi USERNAME! You've successfully authenticated, but GitHub does not
> provide shell access.

If the repository belongs to an organization and you’re using an SSH key generated by an OAuth App, OAuth App access may have been restricted by an organization owner. For more information, see «About OAuth App access restrictions.»

For more information, see Adding a new SSH key to your GitHub account.

Check that the repository really exists

If all else fails, make sure that the repository really exists on GitHub.com!
If you’re trying to push to a repository that doesn’t exist, you’ll get this error.

Error: Remote HEAD refers to nonexistent ref, unable to checkout

This error occurs if the default branch of a repository has been deleted on GitHub.com.

Detecting this error is simple; Git will warn you when you try to clone the repository:

$ git clone https://github.com/USER/REPO.git
# Clone a repo
> Cloning into 'repo'...
> remote: Counting objects: 66179, done.
> remote: Compressing objects: 100% (15587/15587), done.
> remote: Total 66179 (delta 46985), reused 65596 (delta 46402)
> Receiving objects: 100% (66179/66179), 51.66 MiB | 667 KiB/s, done.
> Resolving deltas: 100% (46985/46985), done.
> warning: remote HEAD refers to nonexistent ref, unable to checkout.

To fix the error, you’ll need to be an administrator of the repository on GitHub.com.
You’ll want to change the default branch of the repository.

After that, you can get a list of all the available branches from the command line:

$ git branch -a
# Lists ALL the branches
>   remotes/origin/awesome
>   remotes/origin/more-work
>   remotes/origin/new-main

Then, you can just switch to your new branch:

$ git checkout new-main
# Create and checkout a tracking branch
> Branch new-main set up to track remote branch new-main from origin.
> Switched to a new branch 'new-main'

I was able to clone a copy of this repo over HTTPS authenticated. I’ve made some commits and want to push back out to the GitHub server. Using Cygwin on Windows 7 x64.

C:cygwinhomeXPheriorCodelunch_call>git push
Password:
error: The requested URL returned error: 403 while accessing https://MichaelDrog
alis@github.com/derekerdmann/lunch_call.git/info/refs

fatal: HTTP request failed

Also set it up with verbose mode. I’m still pretty baffled.

C:cygwinhomeXPheriorCodelunch_call>set GIT_CURL_VERBOSE=1

C:cygwinhomeXPheriorCodelunch_call>git push
Password:
* Couldn't find host github.com in the _netrc file; using defaults
* About to connect() to github.com port 443 (#0)
*   Trying 207.97.227.239... * 0x23cb740 is at send pipe head!
* Connected to github.com (207.97.227.239) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: C:Program Files (x86)Git/bin/curl-ca-bundle.crt
  CApath: none
* SSL connection using AES256-SHA
* Server certificate:
*        subject: 2.5.4.15=Private Organization; 1.3.6.1.4.1.311.60.2.1.3=US; 1.
3.6.1.4.1.311.60.2.1.2=California; serialNumber=C3268102; C=US; ST=California; L
=San Francisco; O=GitHub, Inc.; CN=github.com
*        start date: 2011-05-27 00:00:00 GMT
*        expire date: 2013-07-29 12:00:00 GMT
*        subjectAltName: github.com matched
*        issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert High Ass
urance EV CA-1
*        SSL certificate verify ok.
> GET /derekerdmann/lunch_call.git/info/refs?service=git-receive-pack HTTP/1.1
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache

< HTTP/1.1 401 Authorization Required
< Server: nginx/1.0.4
< Date: Thu, 15 Sep 2011 22:44:41 GMT
< Content-Type: text/plain
< Connection: keep-alive
< Content-Length: 55
< WWW-Authenticate: Basic realm="GitHub"
<
* Ignoring the response-body
* Expire cleared
* Connection #0 to host github.com left intact
* Issue another request to this URL: 'https://MichaelDrogalis@github.com/dereker
dmann/lunch_call.git/info/refs?service=git-receive-pack'
* Couldn't find host github.com in the _netrc file; using defaults
* Re-using existing connection! (#0) with host github.com
* Connected to github.com (207.97.227.239) port 443 (#0)
* 0x23cb740 is at send pipe head!
* Server auth using Basic with user 'MichaelDrogalis'
> GET /derekerdmann/lunch_call.git/info/refs?service=git-receive-pack HTTP/1.1
Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache

< HTTP/1.1 401 Authorization Required
< Server: nginx/1.0.4
< Date: Thu, 15 Sep 2011 22:44:41 GMT
< Content-Type: text/plain
< Connection: keep-alive
< Content-Length: 55
* Authentication problem. Ignoring this.
< WWW-Authenticate: Basic realm="GitHub"
* The requested URL returned error: 401
* Closing connection #0
* Couldn't find host github.com in the _netrc file; using defaults
* About to connect() to github.com port 443 (#0)
*   Trying 207.97.227.239... * 0x23cb740 is at send pipe head!
* Connected to github.com (207.97.227.239) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: C:Program Files (x86)Git/bin/curl-ca-bundle.crt
  CApath: none
* SSL re-using session ID
* SSL connection using AES256-SHA
* old SSL session ID is stale, removing
* Server certificate:
*        subject: 2.5.4.15=Private Organization; 1.3.6.1.4.1.311.60.2.1.3=US; 1.
3.6.1.4.1.311.60.2.1.2=California; serialNumber=C3268102; C=US; ST=California; L
=San Francisco; O=GitHub, Inc.; CN=github.com
*        start date: 2011-05-27 00:00:00 GMT
*        expire date: 2013-07-29 12:00:00 GMT
*        subjectAltName: github.com matched
*        issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert High Ass
urance EV CA-1
*        SSL certificate verify ok.
* Server auth using Basic with user 'MichaelDrogalis'
> GET /derekerdmann/lunch_call.git/info/refs HTTP/1.1
Authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache

* The requested URL returned error: 403
* Expire cleared
* Closing connection #0
error: The requested URL returned error: 403 while accessing https://MichaelDrog
alis@github.com/derekerdmann/lunch_call.git/info/refs

fatal: HTTP request failed

These are the versions of git and curl that I have:

C:UsersXPherior>git --version
git version 1.7.4.msysgit.0

C:UsersXPherior>curl --version
curl 7.21.7 (amd64-pc-win32) libcurl/7.21.7 OpenSSL/0.9.8r zlib/1.2.5
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtsp
smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate Largefile NTLM SSL SSPI libz

asked Sep 15, 2011 at 22:45

Mike's user avatar

13

I just got the same problem and just figured out what’s cause.

Github seems only supports ssh way to read&write the repo, although https way also displayed ‘Read&Write’.

So you need to change your repo config on your PC to ssh way:

  1. Edit .git/config file under your repo directory.
  2. Find url=entry under section [remote "origin"].
  3. Change it from:
    url=https://MichaelDrogalis@github.com/derekerdmann/lunch_call.git
    to:
    url=ssh://git@github.com/derekerdmann/lunch_call.git
    That is, change all the texts before @ symbol to ssh://git
  4. Save config file and quit. now you could use git push origin master to sync your repo on GitHub.

zeFree's user avatar

zeFree

2,1002 gold badges31 silver badges38 bronze badges

answered Oct 14, 2011 at 18:26

Xiao's user avatar

XiaoXiao

11.9k2 gold badges28 silver badges36 bronze badges

17

To definitely be able to login using https protocol, you should first set your authentication credential to the git Remote URI:

git remote set-url origin https://yourusername@github.com/user/repo.git

Then you’ll be asked for a password when trying to git push.

In fact, this is on the http authentication format. You could set a password too:

https://youruser:password@github.com/user/repo.git

You should be aware that if you do this, your github password will be stored in plaintext in your .git directory, which is obviously undesirable.

answered Jul 6, 2012 at 19:41

Thiago Macedo's user avatar

Thiago MacedoThiago Macedo

6,1211 gold badge20 silver badges22 bronze badges

20

One small addition to Sean’s answer.

Instead of editing .git/config file manually, you can use git remote set-url command.

In your case it should be:

git remote set-url origin ssh://git@github.com/derekerdmann/lunch_call.git

I find it easier and cleaner, than messing around with dot-files.

  • help.github.com: Changing a remote’s URL

Community's user avatar

answered Jun 4, 2012 at 22:29

fetsh's user avatar

fetshfetsh

1,9091 gold badge16 silver badges17 bronze badges

1

Edit .git/config file under your repo directory

Find url= entry under section [remote "origin"]

Change it from url=https://github.com/rootux/my-repo.git to
https://USERNAME@github.com/rootux/my-repo.git

where USERNAME is your github user name

answered Nov 7, 2012 at 9:39

Gal Bracha's user avatar

Gal BrachaGal Bracha

18.1k11 gold badges71 silver badges85 bronze badges

3

The other answers that suggest switching to SSH sort of miss the point. HTTPS is supported, but you must log in with you GITHUB password, not your SSH passphrase (which was what was giving me the same exact error).

I was having the same problem, but making sure to use my actual GitHub password at the terminal password prompt fixed the solution with no alteration to the config, or resorting to SSH.

The reason it is important to note this, is many public institutions (such as my school) will block SSH, but allow HTTPS (which is the only reason I started cloning over HTTPS in the first place).

Hope that helps anyone else having the same issue…

answered Jan 17, 2012 at 17:27

BMB's user avatar

BMBBMB

1,58813 silver badges10 bronze badges

4

If you are using windows, sometimes this may happen because Windows stores credentials for outer repo (in our case github) in its own storage. And credentials that saved there can be different from those you need right now.

enter image description here

So to avoid this problem, just find github in this storage and delete saved credentials. After this, while pushing git will request your credentials and will allow you to push.

answered Apr 18, 2018 at 7:34

Andrew Gans's user avatar

Andrew GansAndrew Gans

6906 silver badges9 bronze badges

2

Same error and resolution on Mac OS X.

Everything was working fine till I created a new account on GitHub and tried to push

$ git push -u origin master

And got the error:

remote: Permission to NEWUSER/NEWREPO.git denied to OLDUSER. fatal: unable to access ‘https://github.com/NEWUSER/NEWREPO.git/’: The requested URL returned error: 403

It should have fixed by setting the user.name either for global or current repo

$ git config –-global user.name NEWUSER
$ git config user.name NEWUSER

But it didn’t.

I got it fixed by deleting the OLDUSER associated with GitHub from Keychain Access app under Passwords section. Then the push command went successful.

$ git push -u origin master

reference

Laurel's user avatar

Laurel

5,90314 gold badges30 silver badges56 bronze badges

answered Nov 10, 2014 at 11:36

zeeawan's user avatar

zeeawanzeeawan

6,5672 gold badges50 silver badges54 bronze badges

2

This works for me -:

git remote set-url origin https://username@github.com/user/repo.git

Hope it helps

Jeff Hammond's user avatar

Jeff Hammond

5,2153 gold badges27 silver badges45 bronze badges

answered Sep 27, 2015 at 21:41

stevensagaar's user avatar

2

I think @deepwaters got the answer correct for older versions. The HTTPS URL needs to have the username. I had git 1.7.0.4 and git push origin master wouldn’t even ask for a password till I added it.

answered Jun 27, 2012 at 14:44

nisah's user avatar

nisahnisah

2,4283 gold badges21 silver badges20 bronze badges

0

answered Jun 20, 2012 at 19:03

gsf's user avatar

gsfgsf

1,70816 silver badges11 bronze badges

1

A 403 code is «Forbidden». The server saw your request and refused it. Do you have permission to push to that repository?

answered Sep 16, 2011 at 0:32

Nick Veys's user avatar

Nick VeysNick Veys

23.1k4 gold badges43 silver badges63 bronze badges

3

A lot of answers here, but this is what solved my problem.

Since July 2020 you must use Token authentication to access GitHub if you are using HTTPS.

So you must generate an access token in your profile settings page and use it as your password. Check the boxes necessary to write to the repository.

Now add your username to the repo with this command:

git remote set-url origin https://yourusername@github.com/user/repo.git

When you try to push, it will ask for your password. Enter your newly generated token.

If you are still having trouble pushing, use the web interface to fork it as a personal repo to isolate any permission problem. You’ll be able to focus to solve the auth problem.

answered Jul 29, 2021 at 23:58

neves's user avatar

nevesneves

30.5k25 gold badges146 silver badges181 bronze badges

Figured it out. I cloned over HTTPS. Setting up my public SSH keys, cloning over SSH, and pushing over SSH fixed it.

answered Sep 16, 2011 at 3:29

Mike's user avatar

MikeMike

19k11 gold badges55 silver badges72 bronze badges

3

I faced the same error and the cause was stupid — I did not have privileges to commit to selected repository. I did not know that I have to

  1. fork selected project first
  2. clone repository locally
  3. commit my changes locally
  4. push changes to my github clone
  5. request pull request to upstream

as described in https://help.github.com/categories/63/articles

answered Mar 2, 2014 at 14:54

Leos Literak's user avatar

Leos LiterakLeos Literak

8,62319 gold badges80 silver badges150 bronze badges

2

I actually had a very simple fix to this. All i did was edit the git config file differently after cloning the repository. The remote origin url is what you need to edit in your default config file. It should look like seen below

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = https://*username*@github.com/*username*/*repository*.git
[branch "master"]
    remote = origin
    merge = refs/heads/master

answered Oct 13, 2015 at 23:00

Akah's user avatar

AkahAkah

1,35913 silver badges19 bronze badges

3

Do this for a temporary fix

git push -u https://username:password@github.com/username/repo_name.git master

answered Sep 19, 2018 at 15:41

prashantitis's user avatar

prashantitisprashantitis

1,78723 silver badges50 bronze badges

0

  1. Click on your repository
  2. On the right hand side, click on «Settings»
  3. On the left hand side option panel, click on «Collaborators»
  4. Add the person name you know in GitHub
  5. Click «Add Collaborators»

After this our «Push to Git» worked fine.

Teepeemm's user avatar

Teepeemm

4,2815 gold badges34 silver badges57 bronze badges

answered Mar 13, 2015 at 13:38

Krishna's user avatar

KrishnaKrishna

911 silver badge1 bronze badge

0

change it from

url=https://MichaelDrogalis@github.com/derekerdmann/lunch_call.git 

to

url=ssh://git@github.com/derekerdmann/lunch_call.git

It works!

Do not forget the «git» before the «@».

Juan Sosa's user avatar

Juan Sosa

5,2521 gold badge34 silver badges41 bronze badges

answered Oct 18, 2012 at 1:07

JimmyDong's user avatar

JimmyDongJimmyDong

1531 silver badge7 bronze badges

1

answered Dec 6, 2012 at 18:37

SMSM's user avatar

SMSMSMSM

1,4793 gold badges19 silver badges34 bronze badges

0

For those having permission denied 403 error while using ssh(according to Xiao) or http urls
try these commands

>git config --global --unset-all credential.helper

>git config --unset-all credential.helper

with administrator rights

>git config --system --unset-all credential.helper

Community's user avatar

answered Jan 12, 2017 at 18:17

Moosa Baloch's user avatar

Moosa BalochMoosa Baloch

1,1651 gold badge13 silver badges25 bronze badges

1

None of the above answers worked for my enterprise GitHub account. Follow these steps for pushing via ssh key generation way.

Create a repo by visiting your git account.

Generate ssh key:

ssh-keygen -t rsa -C "your_email@example.com"

Copy the contents of the file ~/.ssh/id_rsa.pub to your SSH keys in your GitHub account settings.
Test SSH key:

ssh -T git@github.com
clone the repo:
git clone git://github.com/username/your-repository

Now cd to your git clone folder and do:

git remote set-url origin git@github.com:username/your-repository.git

Now try editing a file (try the README) and then do:

git add -A
git commit -am "my update msg"
git push -u origin master

Update: new git version seems to recommend not to have any file while new repo is created. Hence make aa blank repo.

answered Feb 13, 2018 at 7:02

CKM's user avatar

CKMCKM

1,8932 gold badges23 silver badges29 bronze badges

1

Below is the solution

For Windows you can find the keys here:

control panel > user accounts > credential manager > Windows credentials > Generic credentials

Next, remove the Github keys.

In mac

1-In Finder, search for the Keychain Access app.

2In Keychain Access, search for github.com.

3-Find the «internet password» entry for github.com.

4-Edit or delete the entry accordingly.

answered Apr 13, 2020 at 9:27

Kapil Soni's user avatar

Kapil SoniKapil Soni

9932 gold badges13 silver badges36 bronze badges

0

What worked for me:

My repo was a fork and still linked to the the parents repo.

git remote -v

Will tell you if it is your repo or not.

git remote set-url origin https://github.com/USERNAME/OTHERREPOSITORY.git

Allows you to reconfigure it to your repo and then allow you to push.

Andrew Lygin's user avatar

Andrew Lygin

5,9671 gold badge32 silver badges37 bronze badges

answered Aug 26, 2016 at 17:13

timxor's user avatar

timxortimxor

95211 silver badges15 bronze badges

0

if you get 403 error with github,

sure to check all checkboxs when create token:

https://github.com/settings/tokens

i think github token generate page has design flaw.

answered Mar 1, 2022 at 3:18

sailfish009's user avatar

sailfish009sailfish009

2,4161 gold badge24 silver badges30 bronze badges

For anyone curious, my mac machine vs lucid vm ran git 1.7.6 vs 1.7.0.4, and the exact same repo was pushable from my mac (newer git) but not the VM

Same curl version. Perhaps some older git versions don’t support https pushes?

answered Mar 5, 2012 at 23:49

patcon's user avatar

patconpatcon

1,6771 gold badge12 silver badges9 bronze badges

2

Add the user name as part of the URL and This error happens because the git command is hitting http instead of https. So set the url

git remote set-url origin https://<username>@github.com/Path_to_repo.git

After which you will be prompted for password:

Tunaki's user avatar

Tunaki

130k46 gold badges326 silver badges414 bronze badges

answered Mar 5, 2016 at 15:01

venkat sam's user avatar

venkat samvenkat sam

1581 silver badge12 bronze badges

Try below command using administrator permission. This command solved my issue. Hope it will resolve your problem.

git config --system --unset-all credential.helper

answered Apr 25, 2020 at 18:03

Faisal's user avatar

FaisalFaisal

4,4913 gold badges40 silver badges49 bronze badges

1

I figured out my own variation of this problem.

The issue was not changing the protocol from https to ssl, but instead,
setting the Github global username and email! (I was trying to push to a
private repository.

git config --global user.email "your_github_email_@email.com"

git config --global user.name "Your full name"

answered Feb 17, 2014 at 21:08

Lucas Ou-Yang's user avatar

Lucas Ou-YangLucas Ou-Yang

5,35513 gold badges42 silver badges61 bronze badges

1

Github has page dedicated to troubleshooting this error:

https://help.github.com/articles/https-cloning-errors

In my case it turned out that using a new version of git (1.8.5.2) solved this problem.

answered Sep 27, 2014 at 13:23

AndyL's user avatar

AndyLAndyL

14.1k14 gold badges43 silver badges70 bronze badges

Anyone who didn’t solve their problem with these solutions follow this thread:

«This happens when two git accounts are being used on same machine»
https://stackoverflow.com/a/52046047/7861886

it has Windows solution and also i have added Mac solution for Mac users in comments.

answered Jul 16, 2020 at 20:58

Mehrdad's user avatar

MehrdadMehrdad

9311 gold badge14 silver badges24 bronze badges

Решение ошибки remote: Permission to user/repo denied to user/other-repo. fatal: unable to access user/repo: The requested URL returned error: 403

Дата: 27.03.2017

В данном уроке рассмотрим варианты решения данной оишбки:

remote: Permission to user/repo denied to user/other-repo.
fatal: unable to access user/repo: The requested URL returned error: 403

Возникает она чаще всего у новичков при попытке выполнить команду:

$ git push

Пример ошибки на скриншоте ниже.

git-permission-to-denied-to-error-403.jpg

Данная ошибка возникает довольно часто при работе с Git в терминале Windows. Суть ошибка довольно таки простая, но почему-то в интернете постоянно создаются темы с вопросом на данную тему и нет внятного ответа на русском языке.

Ошибка говорит нам о том, что мы пытаемся отправить данные в чужой репозиторий. И о том, что текущий пользователь Git не имеет прав для отправки данных в указанный в команде репозиторий.

Существует два способа решить данную ошибку:


Вариант 1. Дать текущему пользователю права для работы с репозиторием

Данный способ подойдет, если вы являетесь владельцем обеих учетных записей указанных в ошибке. Необходимо зайти на GitHub под именем того пользователя, в чей репозиторий вы не можете отправить данные. В настройках репозитория указать необходимого соавтора. Ему на почту отправится приглашение, которое необходимо подтвердить, перейдя по ссылке в письме.

github-repo-config.jpg

После этого вы сможете работать с репозиторием как со своим и ошибка больше не появится.


Вариант 2. Назначить в системе текущим пользователем Git ту учетную запись, в которую не можете отправить данные

Для этого необходимо перейти в Панель управления Windows. Выбрать отображение в виде категорий.

win-panel.jpg

Перейти в раздел “Учетные записи пользователей и семейная безопасность”. Далее в раздел “Диспетчер учетных данных”. В самом низу будет блок “Общие учетные данные”. Нажмите в нем ссылку “Удаление из хранилища”.

delete-git-config.jpg

После этого при попытке выполнить команду:

$ git push -u origin master

Терминал запросит у вас пароль от учетной записи на Github в чей репозиторий вы пытаетесь отправить данные.

После ввода пароля система установит данного пользователя как основного и будет использовать его в дальнейшем при работе с Git.


Надеюсь данный пост поможет вам решить ошибку, с которой я разбирался почти сутки.

git

github


Не забудьте сказать спасибо. Поставьте лайк!

While working with Github you may face that, Git is saying 403 when trying to perform the git push origin master command. This fatal error occurs because password authentication for accessing Github’s private repository has been disabled. The error looks like,

fatal: unable to access 'https://github.com/username/location.git/': The requested URL returned error: 403

If you are struggling with the error here is a quick solution for you.

Step 1: Create Personal Access Token on Github

  • Log in to your GitHub account
  • Click on the Profile logo on the top right corner
  • Click on Settings
  • Then, Click on Developer settings for the left sidebar
  • Next, Click on Personal access tokens for the left sidebar
  • After that, Click on Generate new token
  • Give your token a descriptive name on the Note field
  • Select Expiration time and preferred scopes
  • Click on Generate token
  • Finally, you can copy that token and use it to authenticate. You can use the token instead of a password for Git over HTTPS or can use it to authenticate to the API over Basic Authentication.

Step 2: Use Personal Access Token for Authentication

Using HTTPS URL

Personal access tokens can only be used for HTTPS Git operations. Once you have a token, you can enter it instead of your password when performing Git operations over HTTPS. For the existing remote repository, you need to update the remote URL by using,

$ git remote set-url origin https://[githubtoken]@github.com/[username]/[repositoryname].git
$ git push origin master

Or, while cloning any repository,

$ git clone https://github.com/username/repo.git
Username: Enter your username
Password: Enter your access token
Using SSH

For performing Git operation you just need to change the URL. First, make sure your SSH keys are correctly set up. Then, To update the URL you have to run

$ git remote set-url origin git@github.com:[username]/[repositoryname].git
$ git push origin master

Thank you for reading the article. Hope following the steps properly will solve your problem.

But if still, you are facing a problem to generate or use your Personal Access Token and perform Git Operations you can read this article with details step by step process.

Remote: Permission to UserName/repo.git denied to OtherUserName fatal: unable to access ‘https://github.com/UserName/repo.git/’: The requested URL returned error: 403

February 6, 2020 08:47PM

I was working on the one of the clients project hosted on github.com, I cloned the repo locally added few files to local repo and staged/committed project locally all was good.

git add .
git commit -m 'test'

But when tried to push the changes on remote repo on github.com. I was receiving below error. 

git push origin master
remote: Permission to UserName/repo.git denied to AnotherUserName.
fatal: unable to access 'https://github.com/UserName/repo.git/': The requested URL returned error: 403

Powershell visual studio code vscode git add git commit -message git push origin git remove permission denied the requested URL returned error 403.png

This error says that you are using wrong credential or wrong repo: the fact is when you are pushing its not asking for credentials, below are the possible reasons.

  1. Username needs to be the user, not the email
  2. Ensure you provide the proper password. If you have 2FA enabled on GitHub, you need to make sure you create an Access Token with proper access permissions and use the token as password instead.
  3. Repo format is: https://github.com/<user>/<repo>.git
  4. You have 2 different github (version control) accounts

403 means GitHub is not granting you access so one or more of the 4 above cause are the problem. In my case this issue happened due to I have one personal github account  and second received from client. Until now I was using my github account and in the past when I did push for the first time it asked my github credentials which got saved/ cached in windows credential manager, and today for the first time when I am using second account it is using username and password cached earlier for previous github account, causing access denied error.

You can solve this problem by using few methods. But below simple method helps you to solve the issue.

step 1: Go to Control Panel.
step 2: In the control panel find and go to user accounts
step 3: After that go to credential manager
step 4: Then Windows credentials
step 5: Go to Generic credentials, and search github.com, expand it
step 6: Finally delete the Github keys.

git error 403 remote access denied control panel user accounts credential manager git git hub remove generic windows credentials persistence git push origin master.png

Once cached credentials are removed, try pushing project on remote by running command git push origin master, This will prompt for GitHub login prompt, once the authentication is successful with correct username and password, command will succeed and files/folders are pushed successfully on remote github repo.

git push origin master git error 403 remote access denied another user control panel user accounts credential manager git github remove generic windows credentials persistence.png

If you don’t want to remove previous users credentials from windows credentials manager another way to resolve this issue is give previous user access over new github.com repo.

Useful Article
Solved Visual studio Code make sure you configure your user.name and user.email in git
Part 1 Git version control integration in Visual Studio Code
Part 2 Git master branch source control integration in Visual Studio Code
Part 3 Git clone version control integration in Visual Studio Code

Go Back

Error Description:

  • We can clone a copy of this repo over HTTPS authenticated.
  • We have made some commits and want to come back to the GitHub server. Using Cygwin on Windows 7 x64.
C:cygwinhomeXPheriorCodelunch_call>git push
Password:
error: The requested URL returned error: 403 while accessing https://MichaelDrog
[email protected]/derekerdmann/lunch_call.git/info/refs

fatal: HTTP request failed

Solution 1:

Github give the idea it supports ssh way to read & write the repo, whereas https way also displayed ‘Read & Write’.

  • Now you need to change your repo config on your PC to ssh way:

1. Edit .git/config file under your repo directory
2. Find url=entry under section [remote "origin"]
3. Change it from url=https://[email protected]/derekerdmann/lunch_call.git to url=ssh://[email protected]/derekerdmann/lunch_call.git. ie, change all the texts before @ symbol to ssh://git
4. Save config file and quit. You can use git push origin master to sync your repo on GitHub

Solution 2:

  • To login using https protocol, you should first set your authentication credential to the git Remote URI:
  • Now you’ll be asked for a password when try to git push.
  • In fact, this is on the http authentication format. Now you have to set a password :
  • You should be aware that your github password will be stored in plaintext in your .git directory, which is undesirable.

Solution 3:

  • On behalf of editing .git/config file manually, you can use git remote set-url command.
  • In your case it should be:

Solution 4:

  • Edit .git/config file under your repo directory
  • Find url= entry under section [remote "origin"]
  • Change it from url=https://github.com/rootux/ms-Dropdown.git to https://[email protected]/rootux/ms-Dropdown.git
  • Where USERNAME is your github user name

Solution 5:

  • When permission denied 403 error while using ssh(according to Xiao) or http urls you can also try these commands
git config --global --unset-all credential.helper

git config --unset-all credential.helper

With administrator rights

git config --system --unset-all credential.helper

UP NEXT IN GIT

  • Git Tutorial
  • Git Interview Questions and Answers
  • Git HR Interview Questions and Answers
  • Git Sample Resume
  • Git Interview Dress Code
  • Git Job Apply Letters
  • Git Forums

This article discusses a problem that may occur when you try to push to a remote GitHub repository using HTTPS from an A2 Hosting server.

Table of Contents

  • Problem
  • Cause
  • Resolution
    • Method #1: Use SSH
    • Method #2: Modify the HTTPS URL

Problem

When you try to push changes to a GitHub repository from an A2 Hosting server using an HTTPS URL, you receive the following error message:

error: The requested URL returned error: 403 Forbidden while accessing https://github.com/github-username/github-repository-name.git/info/refs

Cause

There are a few possible causes for this problem:

  • You typed an incorrect password. Make sure you are using the correct GitHub password for the account.
  • The Git client on the A2 Hosting server requires a modified HTTPS URL to work correctly. If this is the cause, the password prompt does not even appear when you try to do a push operation.

Resolution

If you are sure you are using the correct GitHub password, there are two ways to resolve the “403 Forbidden” problem:

Method #1: Use SSH

Instead of using HTTPS URLs to push changes to GitHub, you can use SSH instead. For information about how to do this, please visit https://help.github.com/articles/changing-a-remote-s-url.

Method #2: Modify the HTTPS URL

Some A2 Hosting managed servers have an old version of the Git client installed. To push changes to GitHub using this older client version, you must include your GitHub username in the HTTPS URL.

To do this, follow these steps:

  1. Log in to your A2 Hosting account using SSH.
  2. At the command prompt, change to the directory where the Git repository is located.
  3. Type the following command:
    git config -l | grep url

    You should see output that resembles the following:

    remote.origin.url=https://github.com/github-username/github-repository-name.git
  4. You need to add your GitHub username to the github.com portion of the URL. To do this, type the following command, replacing the values in red with your own account information:

    git remote set-url origin "https://github-username@github.com/github-username/github-repository-name.git"
    
  5. To verify the new remote URL setting, type the following command:

    git config -l | grep url
    

    Now when you try to push changes to the GitHub repository, you are prompted for a password, and the push operation should succeed.

Remote: Permission to UserName/repo.git denied to OtherUserName fatal: unable to access ‘https://github.com/UserName/repo.git/’: The requested URL returned error: 403

February 6, 2020 08:47PM

I was working on the one of the clients project hosted on github.com, I cloned the repo locally added few files to local repo and staged/committed project locally all was good.

git add .
git commit -m 'test'

But when tried to push the changes on remote repo on github.com. I was receiving below error. 

git push origin master
remote: Permission to UserName/repo.git denied to AnotherUserName.
fatal: unable to access 'https://github.com/UserName/repo.git/': The requested URL returned error: 403

Powershell visual studio code vscode git add git commit -message git push origin git remove permission denied the requested URL returned error 403.png

This error says that you are using wrong credential or wrong repo: the fact is when you are pushing its not asking for credentials, below are the possible reasons.

  1. Username needs to be the user, not the email
  2. Ensure you provide the proper password. If you have 2FA enabled on GitHub, you need to make sure you create an Access Token with proper access permissions and use the token as password instead.
  3. Repo format is: https://github.com/<user>/<repo>.git
  4. You have 2 different github (version control) accounts

403 means GitHub is not granting you access so one or more of the 4 above cause are the problem. In my case this issue happened due to I have one personal github account  and second received from client. Until now I was using my github account and in the past when I did push for the first time it asked my github credentials which got saved/ cached in windows credential manager, and today for the first time when I am using second account it is using username and password cached earlier for previous github account, causing access denied error.

You can solve this problem by using few methods. But below simple method helps you to solve the issue.

step 1: Go to Control Panel.
step 2: In the control panel find and go to user accounts
step 3: After that go to credential manager
step 4: Then Windows credentials
step 5: Go to Generic credentials, and search github.com, expand it
step 6: Finally delete the Github keys.

git error 403 remote access denied control panel user accounts credential manager git git hub remove generic windows credentials persistence git push origin master.png

Once cached credentials are removed, try pushing project on remote by running command git push origin master, This will prompt for GitHub login prompt, once the authentication is successful with correct username and password, command will succeed and files/folders are pushed successfully on remote github repo.

git push origin master git error 403 remote access denied another user control panel user accounts credential manager git github remove generic windows credentials persistence.png

If you don’t want to remove previous users credentials from windows credentials manager another way to resolve this issue is give previous user access over new github.com repo.

Useful Article
Solved Visual studio Code make sure you configure your user.name and user.email in git
Part 1 Git version control integration in Visual Studio Code
Part 2 Git master branch source control integration in Visual Studio Code
Part 3 Git clone version control integration in Visual Studio Code

Go Back

Понравилась статья? Поделить с друзьями:
  • Невозможность вспомнить или ошибочное воспроизведение составляет содержание процесса это
  • Недолюбленный ребенок как исправить во взрослом возрасте
  • Незащищенный протокол http что это как исправить вордпресс
  • Недостоверные сведения об адресе юридического лица как исправить
  • Невозможно установить это приложение так как не удалось проверить его целостность ios как исправить