치명적 : git 저장소로 보이지 않음


86

내 git 저장소 URL이 올바른 데 왜이 오류가 발생합니까?

jitendra@JITENDRA-PC /c/mySite (master)
$ git push beanstalk master
fatal: 'git@skarp.beanstalkapp.com/gittest.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

jitendra@JITENDRA-PC /c/mySite (master)
$ git clone git://github.com/jquery/jquery.git
Cloning into jquery...
Remote: Counting objects: 19803, done.
Remote: Compressing objects: 100% (5196/5196), done.
Remote: Total 19803 (delta 14204), reused 19549 (delta 14052)
Receiving objects: 100% (19803/19803), 12.80 MiB | 591 KiB/s, done.
Resolving deltas: 100% (14204/14204), done.

jitendra@JITENDRA-PC /c/mySite (master)
$ gitk --all

jitendra@JITENDRA-PC /c/mySite (master)
$ gitk -all

jitendra@JITENDRA-PC /c/mySite (master)
$ git remote add origin git@skarp.beanstalkapp.com/gittest.git

jitendra@JITENDRA-PC /c/mySite (master)
$ git push origin master
fatal: 'git@skarp.beanstalkapp.com/gittest.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

jitendra@JITENDRA-PC /c/mySite (master)

편집 : 원본 스크린 샷 교체

편집하다:

fatal: 'git@skarp.beanstalkapp.com/gittest.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

괜찮 으세요? gettest.git에서 복제 할 수 있습니까? 위의 예에서 다른 jquery를 복제하고 있습니다.
Preet Sangha 2011 년

난 내 자식 호스팅에 내 로컬 폴더 + 파일을 추가 할
Jitendra Vyas는

27
나중에 참조 할 수 있도록 질문에 텍스트를 텍스트로 포함하십시오. 텍스트 이미지가 오프라인 상태가되고 그렇지 않더라도 복사 및 붙여 넣기 등을 방지합니다.
AD7six

답변:


86

scp저장소를 지정하는 방식에 대한 구문이 약간 잘못 되었습니다. 다음과 같아야합니다.

[user@]host.xz:path/to/repo.git/

... git clone 문서 에서 볼 수 있습니다 . 대신 URL을 사용해야합니다.

git@skarp.beanstalkapp.com:/gittest.git

즉, 사용중인 URL에서 :(콜론) 을 놓쳤습니다.

원본의 URL을 업데이트하려면 다음을 수행하십시오.

git remote set-url origin git@skarp.beanstalkapp.com:/gittest.git

1
감사 . 내가 어떤 오류가 발생하지 않았다 왜하지만 난 원격 추가 할 때
Jitendra Vyas는을

이제 시도 git@skarp.beanstalkapp.com:/gittest.git했지만 오류가 발생했습니다remote origin already exists
Jitendra Vyas 2011 년

4
먼저를 사용하여 원본 원격을 제거한 git remote rm origin다음 다시 추가 할 수 있습니다 . 그런 다음 첫 번째 누름에, 당신은 추가 할 수 있습니다 -u매개 변수 (예를 git push -u origin master원하는 경우) master기본이 당신을 위해 상류로 그 저장소에 master.
Mark Longair 2011 년

제거 및 다시 추가가 작동했습니다. 없이 -u. 감사. 나는 처음으로 모든 버전 제어를 사용하는 버전 제어를 처음 사용합니다.
Jitendra Vyas 2011 년

1
".git / config"파일을 편집하고 [remote "origin"]에서 URL을 업데이트 할 수도 있습니다.
dxvargas

27

Ubunt One계정에 기존 저장소를 저장하려고 할 때 비슷한 문제가 발생 하여 다음 단계로 해결했습니다.

1 단계 : 원격 저장소 생성

$ cd ~/Ubuntu\ One/
$ mkdir <project-name>
$ cd <project-name>
$ mkdir .git
$ cd .git
$ git --bare init

2 단계 : 리모컨 추가

$ git remote add origin /home/<linux-user-name>/Ubuntu\ One/<project-name>/.git

3 단계 : 기존 git reop을 원격으로 푸시

$ git push -u origin --all

19

이는 일반적으로 Git 리포지토리에 원본 별칭을 설정하지 않았기 때문입니다.

시험

git remote add origin URL_TO_YOUR_REPO

그러면 .git/config원격 복제 / 푸시 / 풀 사이트 URL 에 대한 별칭이 파일에 추가됩니다 . 이 URL은 저장소 개요 페이지에서 찾을 수 있습니다.


5

내 로컬 및 원격 시스템은 모두 OS X입니다. xCode Server가 제공하는 git repo의 파일 구조를 확인할 때까지 문제가 발생했습니다. 본질적으로 모든 것은 해당 저장소의 chmod 777 *이므로 원격 계정의 동일한 컴퓨터에 별도의 비 xCode 저장소를 설정하기 위해 다음과 같이했습니다.

원격 기계

  1. 계정에 로그인
  2. 모든 프로젝트 'mkdir git'에 대한 마스터 디렉토리 생성
  3. chmod 775 git 그런 다음 cd
  4. 프로젝트 폴더 'mkdir project1'만들기
  5. chmod 777 project1 그런 다음 cd
  6. repo를 만들기 위해 'git init'명령을 실행하십시오.
  7. 이것은 .git dir을 생성합니다. 'chmod 777 .git'명령을 수행 한 다음 cd
  8. .git 777 mod의 모든 파일을 만들려면 'chmod 777 *'명령을 실행하십시오.
  9. myproject1 (cd ..)로 다시 cd
  10. 'touch test.php'명령을 사용하여 새 저장소에 테스트 파일을 설정하십시오.
  11. 'git add test.php'명령을 사용하여 저장소 준비 영역에 추가하십시오.
  12. repo에 파일을 추가하려면 "git commit -m 'new file'"명령을 실행하십시오.
  13. 'git status'명령을 실행하면 "working dir clean"메시지가 표시됩니다.
  14. 'cd ..'를 사용하여 마스터 디렉토리로 cd
  15. 마스터 디렉토리에서 'ln -s project1 project1.git'심볼릭 링크를 만드십시오.
  16. 전체 경로를 얻으려면 'pwd'명령을 실행하십시오.
  17. 제 경우에는 전체 경로가 "/Users/myname/git/project1.git '였습니다.
  18. 나중에 URL에서 사용할 수 있도록 전체 경로를 적어 둡니다.
  19. REMOTE MACHINE 종료

로컬 머신

  1. 'mkdir newproj1'로 'newproj1'어딘가에 프로젝트 폴더를 만듭니다.
  2. 그것에 cd
  3. 'git init'명령 실행
  4. REMOTE MACHINE에 별칭 만들기
  5. 별칭 명령 형식은 'git remote add your_alias_here URL'입니다.
  6. URL이 정확한지 확인하십시오. 이로 인해 처음에는 두통이 생겼습니다.
  7. URL = 'ssh : //user@www.somemachine.com/Users/myname/git/project1.git'
  8. 'git remote add alias URL'을 수행 한 후 'git remote -v'를 수행하십시오.
  9. 명령은 가져 오기 및 푸시 라인으로 응답해야합니다.
  10. cmd 'git pull your_alias master'를 실행하여 REMOTE repo에서 test.php를 가져옵니다.
  11. # 10의 명령 뒤에 멋진 메시지가 표시되어야합니다.
  12. 'git push --set-upstream your_alias master'명령 실행
  13. 12의 명령 후에 좋은 메시지가 표시됩니다.
  14. # 12의 명령은 REMOTE를 프로젝트 마스터 (루트)로 설정합니다.

나를 위해 LOCAL 및 REMOTE에서 git repo로 깨끗한 시작을 얻으려면 먼저 쉘에서 모든 초기 작업이 필요하다는 것을 배웠습니다. 그런 다음 위의 작업 후 IDE에서 LOCAL 및 REMOTE git repos를 쉽게 설정하고 IDE의 GUI를 사용하여 모든 기본 git 명령을 수행 할 수있었습니다.

처음에는 원격에서 시작한 다음 로컬에서 수행하고 원격에서 모든 권한을 열 때까지 어려움이있었습니다. 또한 URL에 심볼릭 링크에 대한 정확한 전체 경로가 있어야 성공할 수 있습니다.

다시 말하지만, 이것은 모두 OS X, 로컬 및 원격 시스템에서 작동했습니다.


정말 감사합니다! 내 디렉토리 권한에 문제가 있었는데 실제로 나열된 게시물을 찾는 데 영원히 걸렸습니다!
Mike

로컬 컴퓨터에 대한 포인트 7도 ... 매우 도움이되지 대장 누락 : P
카를로 목재

2

저장소의 SSH URL이 잘못되었을 가능성이 큽니다.

확인하려면 Github의 저장소로 이동하여 clone or download button. 그런 다음 use SSH링크를 클릭하십시오 .

ssh 링크

이제 공식 저장소의 SSH 링크를 복사하십시오 . 내 것이 이렇게 생겼어-git@github.com:borenho/que-ay.git

아직 git remote add origin git@github.com:borenho/que-ay.git하지 않았다면 이제 할 수 있습니다 origin.

origin이전에 설정했다면 다음 을 사용하여 변경하십시오.git remote set-url origin git@github.com:borenho/que-ay.git

이제 밀어 git push -u origin master


1

TFS 2017을 사용할 때 비슷한 문제가 발생했습니다. GIT 리포지토리를 푸시하거나 가져올 수 없습니다. 결국 TFS 2017을 다시 설치하여 22가 아닌 SSH 포트로 TFS 2017을 설치했는지 확인했습니다 (제 경우에는 8022를 선택했습니다). 그 후 SSH를 사용하여 TFS에 대해 푸시 앤 풀이 가능해졌습니다.


0

비슷한 문제가 있지만 이제 그 이유를 알고 있습니다.

을 사용한 후에는 다음을 사용 git init하여 원격 저장소를 추가해야합니다.

git remote add name url

단어에주의를 기울이십시오.으로 name변경하면 origin이 문제가 발생하지 않습니다.

우리가 그것을 변경하는 경우 물론, py다음 사용 git pull py branch하고 git push py branch때마다 당신이 끌어와 푸시 뭔가도 확인됩니다.


1
지식을 공유 해주셔서 감사합니다. 그러나 이것은 OP의 경우와는 다릅니다. 질문은 매우 다릅니다.
Shahbaz 2015

참고 이 이전에 답변을 이미 누락 된 원격 URL을 추가했다.

0

내 기능 브랜치 중 하나와 동일한 문제에 직면했습니다. 위에서 언급 한 해결책을 시도했지만 아무것도 작동하지 않았습니다. 다음 작업을 수행하여이 문제를 해결했습니다.

  • git pull origin feature-branch-name
  • git push
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.