programing

비트 버킷의 Git 저장소에 푸시할 수 없습니다.

iphone6s 2023. 6. 26. 21:09
반응형

비트 버킷의 Git 저장소에 푸시할 수 없습니다.

새 리포지토리를 만들었는데 이상한 오류가 발생했습니다.비트 버킷에서 Git를 사용한 적이 있지만 방금 다시 포맷하여 Git을 작동시킬 수 없는 것 같습니다.커밋을 한 후, 저는 제 이메일과 이름을 글로벌에 추가해야 했지만, 그 후에는 잘 커밋되었습니다.

명령을 사용하려고 할 때

git push origin master

동작되지 않습니다.다음 메시지가 표시됩니다.

$ git push origin master
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

저는 여기서 어찌할 바를 모르겠습니다.이 저장소를 공유하고 있는 친구가 정상적으로 액세스하고 제대로 밀어 넣었지만 제대로 작동하지 않는 것 같습니다.

Windows에서 Git 및 BitBucket을 막 시작한 사람들과 Bash에 익숙하지 않은 사람들을 위해 이 글을 작성합니다(이는 일반적인 문제인 동시에 질문 내에서 오류 메시지를 검색할 때 높은 순위의 Google 결과이기 때문입니다).

HTTPS에 개의치 않고 빠른 해결책을 찾고 있는 사람들은 이 답변의 맨 아래로 스크롤하여 게으른 사람들을 위한 지침을 확인하십시오.

실제 문제를 해결하려는 경우 아래 지침을 따르십시오.

SSH 문제를 가능한 한 빨리 해결

이것은 VonC에 의해 링크된 URL에서 파생된 일련의 지침입니다.그것은 가능한 한 탄력적이고 간결하도록 수정되었습니다.

  • 입지않음을 $ 는다음로시않는행으로 하지 않는 행.$ (그)$이것은 GitBash에 입력하는 것을 의미합니다.).

  • 깃배시 열기

아직 글로벌 정보를 설정하지 않은 경우:

$ git config --global user.name "Your Name"
$ git config --global user.email "you@example.com"

열려 있는지 확인SSH:

$ ssh -v localhost
OpenSSH_4.6p1, OpenSSL...

그런 거 보여요?

  • 예: 계속합니다.
  • 아니요: 게으른 사람을 위한 섹션으로 건너뛰거나 VonC의 링크된 기사를 따라갑니다.

키를 이미 생성했는지 확인합니다.

$ ls -a ~/.ssh/id_*

파일이 두 개인 경우 다음 단계를 건너뛸 수 있습니다.

$ ssh-keygen

모든 항목을 기본값으로 유지하고 암호를 입력합니다.이제 다음 명령을 사용하여 결과를 볼 수 있습니다.

$ ls -a ~/.ssh/id_*

기존 구성 파일을 확인합니다.

$ ls -a ~/.ssh/config

결과가 나오면 이 파일에 잘못된 정보가 있는지 확인하십시오.파일이 없는 경우 다음을 수행합니다.

$ echo "Host bitbucket.org" >> ~/.ssh/config
$ echo " IdentityFile ~/.ssh/id_rsa" >> ~/.ssh/config

내용을 확인합니다.

$ cat ~/.ssh/config

Host bitbucket.org
 IdentityFile ~/.ssh/id_rsa
  • "IdentityFile" 앞에 공백이 하나 필요합니다.

GitBash를 실행할 때마다 SSH 에이전트를 시작하는지 확인합니다.

$ cat ~/.bashrc
  • 다과같은함표경우시라는 ,start_agent이 단계는 이미 완료되었습니다.
  • 파일이 없으면 계속합니다.
  • 이 기능이 포함되지 않은 파일이 있으면 고정 상태가 됩니다.아래 지침에 따라 추가하는 것이 안전할 수 있지만 그렇지 않을 수도 있습니다!확실하지 않으면 아래 지침을 따르기 전에 .bashrc를 백업하거나 Lazy 섹션으로 건너뜁니다.

GitBash에 다음을 입력하여 .bashrc 파일을 만듭니다.

$ echo "SSH_ENV=$HOME/.ssh/environment" >> ~/.bashrc
$ echo "" >> ~/.bashrc
$ echo "# start the ssh-agent" >> ~/.bashrc
$ echo "function start_agent {" >> ~/.bashrc
$ echo "    echo \"Initializing new SSH agent...\"" >> ~/.bashrc
$ echo "    # spawn ssh-agent" >> ~/.bashrc
$ echo "    /usr/bin/ssh-agent | sed 's/^echo/#echo/' > \"\${SSH_ENV}\"" >> ~/.bashrc
$ echo "    echo succeeded" >> ~/.bashrc
$ echo "    chmod 600 \"\${SSH_ENV}\"" >> ~/.bashrc
$ echo "    . \"\${SSH_ENV}\" > /dev/null" >> ~/.bashrc
$ echo "    /usr/bin/ssh-add" >> ~/.bashrc
$ echo "}" >> ~/.bashrc
$ echo "" >> ~/.bashrc
$ echo "if [ -f \"\${SSH_ENV}\" ]; then" >> ~/.bashrc
$ echo "     . \"\${SSH_ENV}\" > /dev/null" >> ~/.bashrc
$ echo "     ps -ef | grep \${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {" >> ~/.bashrc
$ echo "        start_agent;" >> ~/.bashrc
$ echo "    }" >> ~/.bashrc
$ echo "else" >> ~/.bashrc
$ echo "    start_agent;" >> ~/.bashrc
$ echo "fi" >> ~/.bashrc

파일이 성공적으로 생성되었는지 확인합니다("사용자 이름"이 표시되는 위치에서만 달라야 합니다).

$ cat ~/.bashrc
SSH_ENV=/c/Users/yourusername/.ssh/environment

# start the ssh-agent
function start_agent {
    echo "Initializing new SSH agent..."
    # spawn ssh-agent
    /usr/bin/ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
    echo succeeded
    chmod 600 "${SSH_ENV}"
    . "${SSH_ENV}" > /dev/null
    /usr/bin/ssh-add
}

if [ -f "${SSH_ENV}" ]; then
     . "${SSH_ENV}" > /dev/null
     ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
        start_agent;
    }
else
    start_agent;
fi
  • GitBash를 닫았다가 다시 엽니다.
  • 암호 구문(이전에 생성한 SSH 파일의 경우)을 묻는 메시지가 표시됩니다.
  • 프롬프트가 없으면 암호를 설정하지 않았거나 GitBash가 .bashrc 스크립트를 실행하고 있지 않습니다(이상하므로 내용을 검토해 보십시오!). X Mac(OS X)에서인 경우,.bashrc되지 않음 - 기본적으실않음지되 -.bash_profile문제를 이에 ..bash_profile:[[ -s ~/.bashrc ]] && source ~/.bashrc

암호를 입력하지 않았다면 GitBash를 시작할 때 다음과 같은 내용이 표시되었을 것입니다.

Initializing new SSH agent...
succeeded
Identity added: /c/Users/yourusername/.ssh/id_rsa (/c/Users/yourusername/.ssh/id_rsa)

그리고 다음과 같은 결과가 반환됩니다.

$ ssh-add -l

하지만, 만약 당신이 다음과 같은 것들을 얻는다면.ssh-add -l:

Could not open a connection to your authentication agent.

SSH 에이전트가 생성되지 않았으며 .bashrc가 원인일 수 있습니다.

GitBash를 시작할 때 다음과 같이 표시됩니다.

Initializing new SSH agent...
sh.exe": : No such file or directory

즉, 파일에 반향을 일으킬 때 \를 사용하여 $를 이스케이프하는 것을 잊었다는 의미입니다.변수가 확장됨).이 문제를 해결하려면 .bashrc를 다시 생성합니다.

에이전트가 실행 중이고 키가 추가되었는지 확인합니다.

$ ssh-add -l

다음과 유사한 것을 반환해야 합니다.

2048 0f:37:21:af:1b:31:d5:cd:65:58:b2:68:4a:ba:a2:46 /Users/yourusername/.ssh/id_rsa (RSA)

다음 명령을 실행하여 공용 키를 가져옵니다.

$ cat ~/.ssh/id_rsa.pub

("syslog-message..."로 시작하는 것을 반환해야 합니다.

  • GitBash 창 아이콘을 클릭합니다.
  • 편집 클릭
  • 표시 클릭
  • 마를앞조ssh-rsa및 비와후행트== youremail@yourdomain.combit(bit)
  • 창을 마우스 오른쪽 버튼으로 클릭합니다(복사 수행).
  • 공용 키를 메모장에 붙여넣습니다.
  • 모든 새 줄을 하나의 줄로만 삭제합니다.
  • 를 누릅니다.CTRL+A그리고나서CTRL+C공용 키를 클립보드에 다시 복사합니다.

다음 단계를 수행하여 BitBucket으로 개인 키를 구성합니다.

  • 브라우저를 열고 BitBucket.org 사이트로 이동합니다.
  • BitBucket.org 에 로그인합니다.
  • 아바타 클릭(오른쪽 위)
  • 계정 관리 클릭
  • SSH 키 클릭(왼쪽 메뉴의 보안 아래)
  • 키 추가 클릭
  • 를 입력하십시오.Global Public Key
  • 메모장에서 복사한 공용 키 붙여넣기

A Global Public Key이제 키 목록에 항목이 표시됩니다.

  • 깃바시로 돌아가기
  • 프로젝트가 포함된 디렉토리에 CD를 저장합니다.
  • 원점을 SSH 변형으로 변경합니다(레이지 단계에 대해 를 실행한 경우에는 그렇지 않습니다).

원격 확인:

$ git remote -v

SSH URL로 전환합니다.

$ git remote set-url origin git@bitbucket.org:youraccount/yourproject.git

상태가 정상인지 확인

$ git remote show origin

다음과 같은 내용이 표시됩니다.

Warning: Permanently added the RSA host key for IP address '...' to the list of known hosts.
* remote origin
  Fetch URL: git@bitbucket.org:youruser/yourproject.git
  Push  URL: git@bitbucket.org:youruser/yourproject.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (fast-forwardable)

알았어!

SSH 대신 HTTPS를 사용하도록 선택할 수 있습니다.원격 작업 중에 암호를 입력해야 합니다(한 번 입력하면 일시적으로 캐시됨).HTTPS를 구성하는 방법은 다음과 같습니다.

게으른 사람들을 위한

VonC의 설명에 따라 SSH 문제를 해결해야 합니다. 하지만 지금 당장 공용 를 생성할 도구/시간/지식이 없다면 HTTPS 대체 방법으로 원본을 설정하십시오.

> https://accountname@bitbucket.org/accountname/reponame.git

ToroughGit 또는 명령줄 도구와 같은 GUI 도구 사용.

다음은 대체 출발지 URL에 대한 설명서입니다.

오리진이 없는 경우 오리진을 추가하는 명령줄:

git remote add origin https://accountname@bitbucket.org/accountname/reponame.git

기존 오리진을 변경하는 명령줄:

git remote set-url origin https://accountname@bitbucket.org/accountname/reponame.git

참고: 계정 이름이 이메일이 아닙니다.

글로벌 정보를 설정할 수도 있습니다.

git config --global user.name "Your Name"
git config --global user.email "you@example.com"

그런 다음 푸시를 다시 시도합니다(다시 커밋할 필요 없음).

git push origin master

개인 키를 에 추가하는 것을 잊은 경우에도 이 오류가 발생합니다.

ssh-add ~/.ssh/id_rsa

제임스가 언급대로 2021년 업데이트:

저는 "리포지토리별" 기준이 아닌 작업 공간에 키를 추가해야 했습니다.

이러한 키는 읽기 전용이며 워크스페이스 키는 푸시가 가능합니다.

bitbucket.org/<my-workspace>/workspace/settings/ssh-keys 

하위 저장소에서 동일한 키를 제거해야 합니다. 그렇지 않으면 작업 공간에 키를 추가할 수 없습니다.

액세스 키를 사용하여 2022년 4분기 업데이트:

https://bitbucket.org/<my-workspace>/workspace/projects/<my-project>/settings/access-keys

원답(2013):

다시 포맷됨은 공용 및 개인 SSH 키를 삭제했을 수 있음을 의미합니다(~/.ssh).

"Setup for GitBash"의 "Setup for Git"에 이어 "Use the SSH protocol with BitBucket"에서 설명한 바와 같이 이를 재생성하고 공용 SSH 키를 BitBucket 프로필에 게시해야 합니다.

계정->계정관리->SSH 키:

http://solvedproblems.hydex11.net/_media/solved-problems/crazy-problems/bitbucket_manage_account.png

그러면:

http://solvedproblems.hydex11.net/_media/solved-problems/crazy-problems/bitbucket_add_ssh.png

"JetBrain 소프트웨어와 Mercurial/BitBucket 통합"의 이미지

다음 명령을 사용하여 리모컨을 제거하여 이 문제를 해결했습니다.

git remote remove origin

그런 다음 ssh 대신 https url을 사용하여 원격을 추가하려고 했습니다.

git remote add origin httpsUrl

Github 자격 증명을 요청합니다.자격 증명을 입력한 다음 다음을 사용하여 Git로 푸시해 보십시오.

git push origin master

저도 같은 문제가 있었습니다.SSH 키가 올바르게 설정되었습니다.저는 이 문제를 이렇게 고쳤습니다.

비트 버킷에서 새 프로젝트를 생성한 후 클론을 사용합니다.터미널에 cloning 명령을 입력하면 빈 프로젝트가 컴퓨터에 복제됩니다.그런 다음 파일을 이 디렉터리에 복사하고 비트 버킷에 커밋 및 푸시를 시작할 수 있습니다.

directory~/.ssh 아래의 .
참조: https://confluence.atlassian.com/bitbucket/set-up-ssh-for-git-728138079.html
config 의 구성을 합니다.

Host bitbucket.org
 IdentityFile ~/.ssh/<privatekeyfile>

내가 겪었던 혼란을 누군가를 구할 수도 있는 두 가지 작은 설명:

1 - HTTPS와 SSH의 연결 URL이 다릅니다.

https를 통해 연결할 때는

https://your_account_name@bitbucket.org/owner-account/repo-name.git

그러나 SSH를 통해 연결할 때 계정 이름은 항상 "git"입니다.

ssh://git@bitbucket.org/owner-account/repo-name.git

계정 이름을 앞에 두고 SSH에 연결하려고 하면 원래 포스터에 오류가 발생합니다.이것은 당신이 git@에 연결하여 테스트를 한 다음, 실수로 당신의 사용자 이름으로 시도하고 오류를 볼 수 있는 방법입니다.

2 - 팀 계정을 통한 SSH 키는 2017년에 더 이상 사용되지 않습니다.

팀 계정에 SSH 키를 설정하는 경우 팀 계정을 개인 계정으로 전환할 것을 권장합니다.

모든 사람에게 해당되는 것은 아닐 수 있지만 누군가가 같은 원인을 가지고 있을 경우를 대비하여 여기서 답변을 드립니다.기본적으로 저는 두 개의 비트버킷 계정을 가지고 있고, 각각은 두 개의 다른 공개 키를 가지고 있습니다.ssh -Tv bitbucket.org노트북에서 잘못된 키를 보내는 것을 확인할 수 있었습니다(그러나 두 공용 키가 모두 비트 버킷에 등록되어 있기 때문에 키는 여전히 승인된 상태이며, 키가 푸시 중인 레포에 액세스할 수 없는 다른 계정에 연결되어 있기 때문에 푸시가 거부됨).

그래서 저는 이 가이드를 따랐고 제 이슈는 사라졌습니다: https://blog.developer.atlassian.com/different-ssh-keys-multiple-bitbucket-accounts/

소스 트리(2.4.1 사용)를 사용하는 경우 SSH 키를 생성하여 비트 버킷 설정에 추가하는 더 간단한 방법을 찾았습니다.이것으로 저는 문제를 해결했습니다.

  1. 원본 트리에서 기본 설정으로 이동합니다.
  2. 계정 탭으로 이동하여 계정을 선택합니다.
  3. SSH 키를 생성하고 클립보드에 복사하는 옵션이 있어야 합니다.
  4. 복사가 완료되면 브라우저의 비트버킷으로 이동합니다.[아바타] -> 비트버킷 설정으로 이동합니다.
  5. SSH 키로 이동합니다.
  6. 키 추가 클릭
  7. 복사한 키를 붙여넣습니다.

저는 비트버킷으로부터 SSH 키가 제 계정에 추가되었다는 확인 메일을 받았습니다.

참고로 macOS에서는 터미널을 사용하여 다음 명령을 사용하여 장치에 대해 생성된 키를 볼 수 있습니다.여기에 생성한 키가 저장됩니다.

ls -la ~/.ssh

다른 사람들이 말했듯이, 이 설명서는 도움이 되었습니다: Bitbucket Cloud에서 SSH 프로토콜 사용

저는 macOS를 사용하고 있고 비트 버킷에 공개 키를 설정했지만 다음 번에 푸시하려고 할 때 받았습니다.

리포지토리 액세스가 거부되었습니다.

치명적: 원격 리포지토리에서 읽을 수 없습니다.

올바른 액세스 권한이 있고 리포지토리가 있는지 확인하십시오.

제가 해야 할 일은 2단계였습니다. Bitbucket SSH 설정 가이드 및 특히 3단계에 설명된 대로 키를 ssh-agent에 추가합니다.

(macOS만 해당) 컴퓨터가 다시 시작할 때마다 암호를 기억하도록 하기 위해 ~/.ssh/config 파일을 열고(또는 생성) 파일에 다음 행을 추가합니다.

호스트 *
(키체인 예)를 사용합니다.

같은 문제를 가진 Mac 사용자에게 도움이 되기를 바랍니다.

Atlassian 튜토리얼에서와 같이 ssh를 수행하고 개인 키가 저장소가 아닌 프로필에 붙여넣는지 확인합니다 :)

Git가 일부 repo 지침을 변경했습니다. 로컬 repo를 Git 클라우드에 연결했는지 확인하고 누락된 것이 있는지 확인하기 위해 각 단계를 확인합니다.

Git 설명서[https://docs.github.com/en/free-pro-team @github/github/connecting-to-github/connecting-to-github-with-without]는 다음 설명서를 선호하는 경우 아래 단계가 요약된 이유를 이해하기 위해 훨씬 더 상세하고 읽을 가치가 있습니다.

내 Git 체크리스트:-

  1. 마스터 분기가 주 분기로 변경되었습니다.
  2. 레포를 초기화하고 처음부터 시작하려면 다음을 사용하여 트랙을 해제합니다.$rm -rf .git재귀적으로 깃을 제거합니다.
  3. "Apple Git"을 사용하지 않는지 확인합니다.which git라고 쓰여 있을 것입니다./usr/local/bin/git 당신이 홈브루로 한다면, git는 그것을 설치합니다.$brew install git
  4. 커밋에 대한 이름 및 전자 메일 주소를 구성합니다(Github에 등록한 전자 메일 주소를 사용해야 함).
$git config --global user.name "Your Name"
$git config --global user.email "you@example.com"
  • 파일 이름의 대소문자 변경을 추적하도록 Git를 구성합니다.
$git config --global core.ignorecase false

, 할 수 있습니다.$ls -a파일을 찾으려면 다음과 같이 하십시오.$open .gitignore편집하고 저장한 후 닫습니다.

  1. 합니다. 암호를 할 수 있는 컴퓨터를 입니다. SSH 키는 신뢰할 수 있는 컴퓨터를 식별하는 방법입니다. SSH 키는 SSH 키입니다.
    는 " " " 입니다.
  • 를 하여 새 키 ssh-keygen -t rsa -C "your_email@example.com" KEY »
  • 키를 저장할 파일과 암호를 입력하라는 메시지가 나타납니다.두 단계 모두 Enter 키를 눌러 두 옵션을 모두 비워 둡니다(기본 이름 및 암호 없음).
  • 새 키를 합니다. " " " ssh-agent"입니다.ssh-add ~/.ssh/id_rsa
  • GitHub에 로그인하고 계정 설정을 방문한 후 SSH 키를 클릭하여 SSH 키를 GitHub에 추가합니다.SSH추가를 클릭

왼쪽 탐색에서 프로필 이미지와 그 아래에 있는 편집 키를 클릭하여 찾을 수도 있습니다.

  • 을 사용하여 합니다.pbcopy < ~/.ssh/id_rsa.pub

  • 제목 필드에 YOR_NAME의 MacBook Air와 같은 컴퓨터를 식별하는 것을 입력합니다.

  • 필드에서 +를 눌러 이전에 만든 키를 붙여넣습니다. 키에 문자나 공백을 추가하거나 제거하지 마십시오.

  • 추가를 클릭하고 다음을 입력하여 터미널에서 모든 작업이 작동하는지 확인합니다.ssh -T git@github.com

    다음 메시지가 표시됩니다.

    Hi YOUR_NAME! You've successfully authenticated, but GitHub does not provide shell access.
    

이제 로컬 컴퓨터가 클라우드에 연결되었으므로 온라인 또는 로컬 컴퓨터에 레포를 생성할 수 있습니다.Git가 분기 메인의 이름 마스터를 변경했습니다.리포지토리를 연결할 때 SSH 키보다 HTTPS 키를 사용하는 것이 더 쉽습니다.질문의 오류를 방지하기 위해 처음에 저장소를 연결하는 SSH가 필요합니다.

Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

지금 보고하는 단계를 따르십시오. GitHub은 지점을 만들기 위한 추가 단계를 추가했습니다(2020년 10월 작성 시점).

  • 명령줄 에코 "#testing-with-jest" >> README.md git intigit 추가 README.md git commit -m "first commit" git branch -M main git remote add origin - (SSH가 아닌 HTTPS url 사용) git push -u origin main

  • 명령줄 git remote add origin에서 기존 리포지토리를 푸시하려면(SSH가 아닌 HTTPS URL 사용) git 브랜치 -M main git push -u origin main

항상 하여 처음부터 할 수 .$rm -rf .git그리고 다시 시작합니다. 그러나 위의 단계 중 어떤 것도 놓치지 않고 항상 가장 좋은 진실의 원천은 문서라는 것을 먼저 확인하는 것이 유용합니다. 읽고 이해하는 데 더 오랜 시간이 걸리더라도 말입니다!

한 리포지토리에 대해 동일한 오류가 발생했습니다. 갑자기 커밋을 푸시하려고 할 때 다른 리포지토리가 모두 정상적으로 작동했습니다.SSH 것으로 댓글을 - to 문제 SSH 키에이니다습났타나로있음알고이미통해으설을명전는것는있▁-이▁onbuck▁bit▁the▁to)있음▁go▁tobuck▁(▁keyet▁-() - on bitbucket go toView Profile 클합니다를 클릭합니다.Manage Account.

에서 왼서에다클니다합릭을음쪽▁▁the다를 클릭합니다.SSH Keys그런 다음 시스템에 있는 ~/.dll/ 디렉토리에 있는 파일을 추가합니다.

되지 않은- 중 하지만, 기본 지정 이 지정된, 에 id_dsa.pub 파일을 해야 합니다.-i연결할 때 키에 대한 경로가 있는 옵션입니다.

ssh -i ~/.ssh/customkeyname username@ip_address

로컬 키를 비트 버킷의 계정에 추가하면 리포지토리와 상호 작용을 시작할 수 있습니다.

저에게 가장 효과적인 해결책은 푸시를 더 작은 덩어리로 나누는 것이었습니다.

커밋에서 대형 스크린샷 이미지 파일(10MB 이상) 제거

보안은 결국 문제가 되지 않았습니다. bin 파일의 제한에 대해 자세히 설명합니다.

이 오류는 리포지토리가 없는 경우에도 표시됩니다.레포 이름에 대시가 누락된 것을 확인할 때까지 모든 답을 시도했습니다.

오류의 경우:

[error] 리포지토리 액세스가 거부되었습니다. 배포 키를 통한 액세스가 읽기 전용입니다. 치명적: 원격 리포지토리에서 읽을 수 없습니다. 올바른 액세스 권한이 있고 리포지토리가 있는지 확인하십시오.

[오류] 치명적: 원격 리포지토리에서 읽을 수 없습니다.

[오류] 치명적: 'https'에 대한 원격 도우미를 찾을 수 없습니다.

다음 단계를 수행하여 해결했습니다.

먼저 이 종속성을 설치합니다.

$ yum install expat expat-devel openssl openssl-devel

그런 다음 깃을 제거합니다.

$ yum remove git git-all

이제 마지막 버전에서 Git를 빌드하고 설치합니다. 이 경우:

$ wget https://github.com/git/git/archive/v2.13.0.tar.gz
$ tar zxf v.2.13.0.tar.gz
$ cd git-2.13.0/

그런 다음 구성:

$ make configure
$ ./configure --with-expat --with-openssl

마지막으로 다음과 같이 설치합니다.

$ make 
$ make install install-doc install-html install-info

이상입니다. 이제 https로 repo를 구성합니다.

$ git remote add origin https://github.com/*user*/*repo*.git
# Verify new remote
$ git remote -v

원격 서버에서 ssh 키를 구성한 경우 삭제해야 합니다.

이 오류가 발생했습니다.

원격 호스트에서 bitbucket.org 에 대한 연결을 닫았습니다. 치명적:원격 리포지토리에서 읽을 수 없습니다.올바른 액세스 권한을 가지고 있는지 확인하십시오.

그리고 노력했습니다.

git config --global user.email "you@example.com "

따옴표 없이 작업했습니다.

git 명령줄이 내 미인대회에서 생성된 키를 상상하지 않았다는 것을 발견했습니다(Windows 10).

서버 장애에서 내 대답 보기

SSH 에이전트(및/또는 BitBucket)에 SSH 키가 여러 개 있는 경우 이 문제가 발생할 수 있습니다.이 문제에 대한 해결 방법은 Atlassian 설명서를 참조하십시오.

저는 이 문제가 있었고 제가 미쳤다고 생각했습니다.저는 SSH를 20년 동안 사용해 왔습니다. 그리고 2012년부터 SSH를 사용했습니다.하지만 집 컴퓨터에서 비트 버킷 저장소를 가져올 수 없는 이유는 무엇입니까?

두 개의 비트 버킷 계정이 있고 에이전트 내부에 SSH 키 4개가 로드되어 있습니다.내 .ssh/config가 올바른 키를 사용하도록 구성되어 있더라도. ssh가 연결을 초기화할 때 에이전트에 로드된 순서대로 사용하고 있었기 때문에 나는 개인 비트 버킷 계정에 로그인하고 있었습니다.

그런 다음 보고서를 가져오려고 하면 금지 오류가 발생합니다.

나는 에이전트로부터 키를 언로드했습니다.

ssh-add -d ~/.ssh/personal_rsa

그러면 저는 레포를 가져올 수 있습니다.

나중에 알게 된 것은 지정된 ID만 사용하도록 강제할 수 있다는 것입니다.

 Host bitbucket.org-user2
     HostName bitbucket.org
     User git
     IdentityFile ~/.ssh/user2
     IdentitiesOnly yes

그 에 대해 몰랐어요.IdentitiesOnly

비트 버킷 문서 자체에서

https://blog.developer.atlassian.com/different-ssh-keys-multiple-bitbucket-accounts/

프로젝트로 하여 원본프이다음한을 ..gitconfig메모장++(또는 다른 텍스트 편집기)로 파일을 작성하고 둘을 비교합니다..git은 "URL"입니다..git 스의 URL의 .git.

이것으로 저의 문제가 해결되었습니다.

그냥 해보세요.

git remote add origin <HTTP URL>

언급URL : https://stackoverflow.com/questions/16074832/cannot-push-to-git-repository-on-bitbucket

반응형