nghiêm trọng: dường như không phải là một kho lưu trữ git


83

Tại sao tôi gặp lỗi này khi url kho lưu trữ git của tôi chính xác?

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)

Chỉnh sửa: Ảnh chụp màn hình gốc đã thay thế

BIÊN TẬP:

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

Bạn có chắc là nó ổn không? Bạn có thể sao chép từ gettest.git không? Bạn đang sao chép một jquery khác trong ví dụ trên.
Tăng đoàn

tôi muốn thêm thư mục + tập tin địa phương của tôi để git lưu trữ của tôi
Jitendra Vyas

27
để tham khảo trong tương lai, vui lòng bao gồm văn bản trong câu hỏi - dưới dạng văn bản. Ảnh của văn bản đi offline, và thậm chí nếu họ không, họ ngăn chặn sao chép và dán, vv
AD7six

Câu trả lời:


85

Bạn có cú pháp cho scpcách chỉ định một kho lưu trữ theo kiểu hơi sai - nó phải là:

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

... như bạn có thể thấy trong tài liệu git clone . Bạn nên sử dụng URL thay thế:

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

tức là trong URL bạn đang sử dụng, bạn đã bỏ sót :(dấu hai chấm)

Để cập nhật URL cho nguồn gốc, bạn có thể làm:

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

1
Cảm ơn . nhưng sau đó lý do tại sao tôi đã không nhận được bất kỳ thông báo lỗi khi tôi thêm xa
Jitendra Vyas

Bây giờ tôi thử với git@skarp.beanstalkapp.com:/gittest.gitnhưng nhận được lỗiremote origin already exists
Jitendra Vyas

3
Trước tiên, bạn có thể xóa điều khiển từ xa gốc bằng git remote rm originvà sau đó thêm lại. Sau đó, trong lần đẩy đầu tiên của bạn, bạn có thể muốn thêm -utham số (tức là git push -u origin master) nếu bạn muốn mastertrong kho lưu trữ đó là ngược dòng mặc định cho của bạn master.
Mark Longair

xóa và thêm lại đã hoạt động. không có -u. cảm ơn. Tôi rất mới sử dụng kiểm soát phiên bản lần đầu tiên sử dụng bất kỳ kiểm soát phiên bản nào.
Jitendra Vyas

Bạn cũng có thể chỉnh sửa tệp ".git / config" và cập nhật url trong [từ xa "origin"]
dxvargas 17/02/13

26

Tôi đã gặp sự cố tương tự khi cố gắng lưu trữ kho hiện có trong Ubunt Onetài khoản của mình, tôi đã khắc phục sự cố này bằng các bước sau:

Bước 1: Tạo repo từ xa

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

Bước 2: Thêm điều khiển từ xa

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

Bước-3: đẩy reop git hiện lên vào điều khiển từ xa

$ git push -u origin --all

18

Điều này thường là do bạn chưa đặt bí danh gốc trên kho lưu trữ Git của mình.

Thử

git remote add origin URL_TO_YOUR_REPO

Thao tác này sẽ thêm bí danh trong .git/configtệp của bạn cho URL trang web sao chép / đẩy / kéo từ xa. URL này có thể được tìm thấy trên trang Tổng quan về kho lưu trữ của bạn.


5

máy cục bộ và máy từ xa của tôi đều là OS X. Tôi đã gặp sự cố cho đến khi tôi kiểm tra cấu trúc tệp của git repo mà xCode Server cung cấp cho tôi. Về cơ bản, mọi thứ đều là chmod 777 * trong repo đó, vì vậy để thiết lập repo không phải xCode riêng biệt trên cùng một máy trong tài khoản từ xa của tôi ở đó, tôi đã làm như sau:

MÁY TỪ XA

  1. đăng nhập vào tài khoản của bạn
  2. Tạo một dir chính cho tất cả các dự án 'mkdir git'
  3. chmod 775 git sau đó cd vào nó
  4. tạo một thư mục dự án 'mkdir project1'
  5. chmod 777 project1 sau đó cd vào nó
  6. chạy lệnh 'git init' để tạo repo
  7. điều này tạo ra một dir .git. thực hiện lệnh 'chmod 777 .git' rồi cd vào đó
  8. chạy lệnh 'chmod 777 *' để tạo tất cả các tệp trong mod .git 777
  9. cd trở lại myproject1 (cd ..)
  10. thiết lập tệp thử nghiệm trong repo w / command mới 'touch test.php'
  11. thêm nó vào khu vực dàn repo bằng lệnh 'git add test.php'
  12. chạy lệnh "git commit -m 'new file'" để thêm tệp vào repo
  13. chạy lệnh 'git status' và bạn sẽ nhận được tin nhắn "working dir clean"
  14. cd trở lại master dir với 'cd ..'
  15. trong master dir tạo một liên kết tượng trưng 'ln -s project1 project1.git'
  16. chạy lệnh 'pwd' để có được đường dẫn đầy đủ
  17. trong trường hợp của tôi, đường dẫn đầy đủ là "/Users/myname/git/project1.git '
  18. viết ra đường dẫn đầy đủ để sử dụng sau này trong URL
  19. thoát khỏi MÁY TỪ XA

MÁY ĐỊA PHƯƠNG

  1. tạo một thư mục dự án ở đâu đó 'newproj1' với 'mkdir newproj1'
  2. cd vào nó
  3. chạy lệnh 'git init'
  4. tạo bí danh cho MÁY TỪ XA
  5. định dạng lệnh bí danh là 'git remote add your_alias_here URL'
  6. đảm bảo rằng URL của bạn là chính xác. Điều này khiến tôi đau đầu ban đầu
  7. URL = 'ssh: //user@www.somemachine.com/Users/myname/git/project1.git'
  8. sau khi bạn thực hiện 'git remote add URL bí danh' do 'git remote -v'
  9. lệnh sẽ phản hồi bằng một dòng tìm nạp và đẩy
  10. chạy cmd 'git pull your_alias master' để lấy test.php từ repo REMOTE
  11. sau lệnh ở # 10, bạn sẽ thấy một thông báo hay.
  12. chạy lệnh 'git push --set-up your_alias master'
  13. sau lệnh trong 12, bạn sẽ thấy thông báo hay
  14. lệnh trong # 12 thiết lập REMOTE làm chủ dự án (gốc)

Đối với tôi, tôi đã học được cách bắt đầu sạch sẽ với git repo trên LOCAL và REMOTE yêu cầu tất cả các công việc ban đầu trong một trình bao trước. Sau đó, sau khi ở trên, tôi đã có thể dễ dàng thiết lập repos git LOCAL và REMOTE trong IDE của mình và thực hiện tất cả các lệnh git cơ bản bằng GUI của IDE.

Tôi đã gặp khó khăn cho đến khi tôi bắt đầu từ điều khiển từ xa trước, sau đó thực hiện cục bộ và cho đến khi tôi mở tất cả các quyền trên điều khiển từ xa. Ngoài ra, có đường dẫn đầy đủ chính xác trong URL tới liên kết biểu tượng là rất quan trọng để thành công.

Một lần nữa, tất cả đều hoạt động trên OS X, máy cục bộ và máy từ xa.


Cảm ơn bạn rất nhiều vì điều này! Tôi đang gặp vấn đề với quyền thư mục của mình và tôi đã mất mãi mãi để tìm thấy một bài đăng thực sự liệt kê chúng!
Mike

Điểm 7 cho ĐỊA ĐIỂM MÁY cũng thiếu dấu hai chấm ... không hữu ích lắm: p
Carlo Wood

1

Tôi đã gặp sự cố tương tự khi sử dụng TFS 2017. Tôi không thể đẩy hoặc kéo kho lưu trữ GIT. Cuối cùng, tôi đã cài đặt lại TFS 2017, đảm bảo rằng tôi đã cài đặt TFS 2017 với Cổng SSH khác với 22 (trong trường hợp của tôi, tôi chọn 8022). Sau đó, có thể đẩy và kéo chống lại TFS bằng cách sử dụng SSH.


1

Rất có thể bạn đã nhận sai URL SSH của repo.

Để xác nhận, hãy truy cập kho lưu trữ của bạn trên Github và nhấp vào clone or download button. Sau đó nhấp vào use SSHliên kết.

liên kết ssh

Bây giờ sao chép liên kết SSH của đại diện chính thức của bạn . Của tôi trông như thế này -git@github.com:borenho/que-ay.git

Bây giờ bạn có thể làm git remote add origin git@github.com:borenho/que-ay.gitnếu bạn chưa có origin.

Nếu bạn đã đặt origintrước đó, hãy thay đổi nó bằng cách sử dụnggit remote set-url origin git@github.com:borenho/que-ay.git

Bây giờ đẩy với git push -u origin master


0

Tôi có một vấn đề tương tự, nhưng bây giờ tôi biết lý do.

Sau khi chúng tôi sử dụng git init, chúng tôi nên thêm một kho lưu trữ từ xa bằng cách sử dụng

git remote add name url

Hãy chú ý đến từ name, nếu chúng ta thay đổi nó thành origin, thì vấn đề này sẽ không xảy ra.

Tất nhiên, nếu chúng ta thay đổi nó thành py, thì việc sử dụng git pull py branchgit push py branchmỗi khi bạn kéo và đẩy một cái gì đó cũng sẽ ổn.


1
Cảm ơn vì nỗ lực chia sẻ kiến ​​thức của bạn, nhưng đây không phải là điều đã xảy ra trong trường hợp của OP. Câu hỏi rất khác.
Shahbaz

Lưu ý rằng câu trả lời trước đó đã nói để thêm url từ xa bị thiếu.

0

Tôi đã gặp phải vấn đề tương tự với một trong các chi nhánh tính năng của mình. Tôi đã thử giải pháp đề cập ở trên không có tác dụng. Tôi đã giải quyết vấn đề này bằng cách thực hiện những điều sau.

  • git pull origin feature-branch-name
  • git push
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.