2013-01-07 10 views
12

Tôi gặp vấn đề với dự án git và đường ray của mình.gây tử vong: Không phải kho lưu trữ git (hoặc bất kỳ thư mục chính nào): .git trên mọi lệnh đường ray nhưng lệnh git hoạt động tốt

Tôi đã thiết lập kho lưu trữ github và đã đẩy thành công bốn lần commit. Mọi lệnh git tôi đang cố gắng hoạt động như mong đợi (git status, git add, git commit, git push, v.v.). Nhưng mỗi lần tôi cố gắng thực hiện một lệnh đường ray (ví dụ bundle show, bundle install, rails s, rails generate, rake test vv) Tôi nhận sau thông điệp trong giao diện điều khiển của tôi:

fatal: Not a git repository (or any of the parent directories): .git 
fatal: Not a git repository (or any of the parent directories): .git 
fatal: Not a git repository (or any of the parent directories): .git 

Mỗi khi thông báo xuất hiện trên ba dòng. Đôi khi trên sáu dòng. Thư mục .git nằm trong dự án của tôi và tôi đang ở trong thư mục chính xác. tất cả các lệnh rails đều hoạt động như mong đợi. Nhưng thông điệp gây phiền nhiễu này đi kèm với mỗi lệnh rails. Tôi nhân bản kho lưu trữ vào một thư mục khác và tạo một kho lưu trữ khác và đẩy mã đó vào kho lưu trữ mới đó. Lỗi cũng nằm trong thư mục mới của tôi.

Tôi đã khởi tạo lại kho lưu trữ Git hiện tại của mình bằng git init nhưng điều đó không thay đổi gì.

Khi tôi thiết lập dự án đường ray mới và đẩy nó vào một kho lưu trữ mới, v.v. không có lỗi. Điều gì có thể sai với dự án của tôi? Bất kỳ ý tưởng, tại sao điều này đang xảy ra và làm thế nào để sửa lỗi này?

Tôi đang làm việc với ruby 1.9.3, rails 3.2.1git 1.7.9.

thx to @manojlds Tôi có thể cách ly vấn đề này thêm một chút. Đó là đá quý therubyracer. Tôi không biết chính xác vấn đề là gì nhưng vì tôi đang ở trên các cửa sổ, tôi sử dụng viên ngọc đặc biệt này: https://github.com/hiranpeiris/therubyracer_for_windows. Vì vậy, tôi sẽ yêu cầu các nhà phát triển của đá quý đặc biệt này và sẽ cho anh ta thấy lỗi bundler. Có lẽ anh ta sẽ biết nếu đó là một vấn đề với đá quý của mình hoặc với các bundler. Gói có bản phát hành trước được cập nhật. Nhưng tôi không thể cài đặt prerelease trên windows. Vì vậy, tôi phải chờ đợi và do đó tôi phải sống bây giờ với những thông điệp khó chịu này. Hoặc có cách nào để vô hiệu hóa các tin nhắn này không?

Đây là vấn đề github của tôi: https://github.com/hiranpeiris/therubyracer_for_windows/issues/1

+0

này trông giống như một lỗi trong các lệnh bạn đang sử dụng ... Họ nên _at least_ ẩn các thông báo lỗi - hoặc không kích hoạt chúng ở nơi đầu tiên. – fge

+0

Bạn có ý gì với một lỗi trong các lệnh của tôi? Các lệnh tôi đang nhập là các lệnh rails chuẩn (ví dụ: "bundle show"). Bạn có thể giải thích thêm một chút không? – coderuby

+3

Khi tôi nhận được vấn đề này, tôi đã không cd'd vào đúng thư mục – bobobobo

Trả lời

4

Có một lỗi cho Bundler, mà có thể liên quan: https://github.com/carlhuda/bundler/issues/2039

Chắc chắn không phải là một vấn đề với git hoặc git repo của bạn. Thử cập nhật gói. (Không chắc chắn nếu việc sửa chữa là trong phiên bản ổn định chưa)

+0

thx để bình luận của bạn tôi có thể cô lập vấn đề hơn một chút. Tôi nhận xét ra tất cả các đá quý bổ sung trong gemfile của tôi. Lỗi đã biến mất. Hơn tôi nhận xét ra tất cả các đá quý thêm từng người một. Đó là đá quý therubyracer. Tôi không biết chính xác vấn đề là gì nhưng vì tôi đang sử dụng các cửa sổ, tôi sử dụng viên ngọc đặc biệt này: https://github.com/hiranpeiris/therubyracer_for_windows. – coderuby

+0

Vì vậy, tôi sẽ yêu cầu nhà phát triển của viên ngọc đặc biệt này và sẽ cho anh ta thấy lỗi bundler. Có lẽ anh ta sẽ biết nếu đó là một vấn đề với đá quý của mình hoặc với các bundler. Gói có bản phát hành trước được cập nhật. Nhưng tôi không thể cài đặt prerelease trên windows. Vì vậy, tôi phải chờ đợi và do đó tôi phải sống bây giờ với những thông điệp khó chịu này. Hoặc có cách nào để vô hiệu hóa các tin nhắn này không? – coderuby

16

Thử chạy git init trong

RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/therubyracer-0.11.0beta1-x86-mingw32.

Nó sẽ khởi tạo một repo trống mới ở đó.

2

Hãy chắc chắn rằng bạn đang ở trong thư mục bên phải khi bạn chạy lệnh rằng:

git tag 

tôi đã cùng một vấn đề khi cài đặt Node.js từ git và thấy rằng tôi đã có được trong một thư mục con sau khi tải về nó để các phiên bản thẻ hiển thị.

Ví dụ, tôi chạy lệnh này để có được Node.js:

git clone https://github.com/joyent/node.git 

... nhưng sau đó đã phải cd node được trong thư mục con nút trước khi lệnh git tag làm việc.