2013-03-15 24 views
42

Tôi đang theo dõi instructions given here để tạo kho lưu trữ Git. Tất cả diễn ra tốt đẹp cho đến dòng cuối cùng:Lỗi gửi Git: "xuất xứ dường như không phải là kho lưu trữ git"

$ git push -u origin master 

fatal: 'origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

Tôi đang sử dụng git phiên bản 1.7.11.3 trên OS X 10.6.8

$ git remote -v 

lợi nhuận gì

Config file cho kho lưu trữ:

[core] 
repositoryformatversion = 0 
filemode = true 
bare = false 
logallrefupdates = true 
ignorecase = true 

Tôi h quảng cáo để mở sudoers file sử dụng lệnh sudo visudo và thêm dòng sau vào nó (dưới đặc điểm kỹ thuật # đặc quyền tài khoản):

git ALL=(ALL) ALL. 

Bây giờ nếu tôi làm:

$ git remote add origin /Volumes/500GB/git-repository/myproject.git 

nó trở lại với không có lỗi, nhưng tôi không thấy bất kỳ mã trong kho (nó có các thư mục nói trên như chi nhánh, lưỡi câu, ...)

Nếu tôi làm:

$ git push -u origin master 
fatal: 'origin' does not appear to be a git repository 
fatal: The remote end hung up unexpectedly 

$ git remote -v 
origin /Volumes/500GB/git-repository/myproject.git (fetch)  
origin /Volumes/500GB/git-repository/myproject.git (push) 
+1

err Khá phổ biến. Hãy xem chủ đề này để được trợ giúp: http://stackoverflow.com/questions/10068172/git-push-origin-master-does-not-work – tymeJV

+1

Đầu ra của lệnh "git remote -v" là gì? – brimble2010

+0

Liên kết đến hướng dẫn của bạn đã biến mất, bạn có nhớ nó là gì không? –

Trả lời

37

Vì nó đã được đề cập trong phần che's answer về việc thêm phần từ xa mà tôi tin rằng bạn vẫn còn thiếu.

Về chỉnh sửa của bạn để thêm từ xa trên ổ USB cục bộ của bạn. Trước hết, bạn phải có 'kho lưu trữ trống' nếu bạn muốn kho lưu trữ của mình trở thành kho lưu trữ được chia sẻ nghĩa là có thể đẩy/kéo/tìm nạp/hợp nhất, v.v.

Để tạo kho lưu trữ trống/chia sẻ, hãy truy cập vị trí mong muốn của bạn. Trong trường hợp của bạn:

$ cd /Volumes/500gb/ 
$ git init --bare myproject.git 

Xem here để biết thêm về việc tạo ra kho trần

Một khi bạn có một kho lưu trữ trần thiết lập ở vị trí mong muốn của bạn bây giờ bạn có thể thêm nó vào bản sao làm việc của bạn như một điều khiển từ xa.

$ git remote add origin /Volumes/500gb/myproject.git 

Và bây giờ bạn có thể đẩy những thay đổi của bạn để kho của bạn

$ git push origin master 
8

Tệp cấu hình của bạn không bao gồm bất kỳ tham chiếu nào đến từ xa "nguồn gốc". Phần đó trông giống như sau:

[remote "origin"] 
    url = [email protected]:repository.git 
    fetch = +refs/heads/*:refs/remotes/origin/* 

Bạn cần thêm điều khiển từ xa bằng cách sử dụng git remote add trước khi có thể sử dụng.

+0

ok, vì vậy tôi cần phải thêm git remote add (xem ở trên) –

+0

Trong git, bạn đẩy vì bạn muốn lấy mã của bạn cho một số repo khác so với mã bạn đang làm việc. Nếu tất cả những gì bạn muốn làm là có một kho lưu trữ git cục bộ mà bạn đã thực hiện. Nếu bạn muốn một cái gì đó alse bạn có thể muốn kiểm tra một số hướng dẫn giải thích repo từ xa và địa phương, có thể bắt đầu từ đây: http://git-scm.com/book/en/Getting-Started-Git-Basics – che

+0

Tôi muốn có 2 bản sao của mã. Một trên ổ đĩa cứng của mac (thư mục làm việc) và một trên ổ USB ngoài (thư mục Git). Nếu tôi có 2 bản sao của mã với các bước tôi đã thực hiện (nghĩa là tất cả trừ các bước cuối cùng trong bài đăng gốc), thì tôi đã hoàn thành. Nhưng tôi không thấy bất kỳ mã nguồn nào trên ổ USB bên ngoài. Tôi thấy một cấu trúc thư mục với các thư mục như nhánh, móc, thông tin, đối tượng, ref, nhưng không có mã nguồn. –

12

Dưới đây là các hướng dẫn từ github:

touch README.md 
git init 
git add README.md 
git commit -m "first commit" 
git remote add origin https://github.com/tqisjim/google-oauth.git 
git push -u origin master 

Dưới đây là những gì thực sự làm việc:

touch README.md 
git init 
git add README.md 
git commit -m "first commit" 
git remote add origin https://github.com/tqisjim/google-oauth.git 
git clone origin master 

Sau khi nhân bản, sau đó lệnh push thành công bằng cách nhắc nhập tên người dùng và mật khẩu

4

Có thể bạn đã quên chạy "git --bare init" trên điều khiển từ xa? Đó là vấn đề của tôi

4

Khi bạn tạo một kho lưu trữ trong bitbucket.org, nó mang lại cho bạn các hướng dẫn về cách thiết lập thư mục địa phương của bạn. Rất có thể, bạn chỉ cần quên để chạy mã:

git remote add origin https://[email protected]/username/reponame.git

2

trường hợp của tôi là một chút khác nhau - vô tình tôi đã thay đổi chủ sở hữu của kho git (thư mục project.git trong trường hợp của tôi), thay đổi chủ sở hữu trở lại git người dùng đã giúp

4

Rất có thể kho lưu trữ từ xa không tồn tại hoặc bạn đã thêm sai.

Bạn cần phải đầu tiên loại bỏ nguồn gốc và thêm lại:

git remote remove origin 
git remote add origin https://github.com/username/repository 
1

Tôi có vấn đề này gây ra tôi đã có nguồn gốc từ xa được xác định tại địa phương. Vì vậy, chỉ cần thay đổi "gốc" vào tên khác:

git remote thêm originNewhttps://github.com/UAwebM ...

git push -u originNew

hoặc u có thể loại bỏ nguồn gốc địa phương của bạn. để kiểm tra loại tên từ xa của bạn:

git remote

để loại bỏ từ xa - đăng nhập kho clone của bạn và gõ:

git từ xa loại bỏ nguồn gốc (tùy thuộc vào tên của điều khiển từ xa)

0

Nếu bạn đang sử dụng HTTPS làm điều này-

git remote add origin URL_TO_YOUR_REPO 
0

Để giải quyết vấn đề này.Tôi chỉ cần tạo một thư mục mới và đặt một số tệp mới.Sau đó sử dụng các commond này.

* git add . 
* git commit 
* git remote add master `your address` 

sau đó nó yêu cầu tôi đăng nhập. Để nhập tên người dùng và mật khẩu của bạn. sau đó

git pull 
git push origin master 

hoàn tất, bạn đã đẩy mã của bạn để github của bạn