Câu trả lời:
Xem tham chiếu lệnh Ruby GEM tại đây :
-n, --bindir DIR - Directory where binary files are located
--[no-]user-install - Install in user’s home directory instead of GEM_HOME.
Thực tế, và bạn vận hành như một người dùng cuối sử dụng Ruby, sẽ không thực sự nhận thấy sự khác biệt nếu các đường dẫn tệp nằm trong của bạn $PATH
. Nhưng mỗi lệnh xử lý rõ ràng với một khía cạnh hệ thống tệp khác nhau của bản cài đặt Ruby GEM.
--bindir
đề cập đến bin
ary dir
ectory. Nhiều Ruby GEMS cài đặt các tập tin tập lệnh Ruby như là một phần của chức năng thư viện cốt lõi của họ nhưng cũng cài đặt một tệp nhị phân mã hóa như là một phần của quá trình cài đặt của họ. Có nghĩa là, nếu bạn là một lập trình viên Ruby, bạn có thể muốn cài đặt Ruby GEM để bạn có thể có một tài liệu tham khảo có thể sử dụng được cho mã cốt lõi của nó trong mã tùy chỉnh của riêng bạn. Nhưng một tệp nhị phân thực hiện một tác vụ trợ giúp tương đương hoặc của Trình trợ giúp trực tuyến được cài đặt dọc theo các tệp thư viện Ruby GEM đó. Từ quan điểm quản lý hệ thống tệp, một số người dùng có thể muốn cài đặt các tệp nhị phân đó trong một thư mục riêng thay vì thư mục Ruby GEMs mặc định.
Vì vậy, trong khi --bindir
là một tùy chọn để kiểm soát nơi các tệp nhị phân được liên kết với Ruby GEM được cài đặt, --user-install
là một ghi đè thủ công cho nơi tất cả các tệp Ruby GEM được cài đặt; nhị phân, thư viện và những thứ khác như thế. Bằng cách sử dụng, --user-install
bạn đang hướng dẫn Ruby GEM cài đặt GEM trong ~/.gem
thư mục đó là khóa học của khóa học trong thư mục chính của người dùng. Nếu không có --user-install
tùy chọn, các tệp Ruby GEM sẽ được cài đặt ở bất cứ nơi nào có GEM_HOME
đường dẫn mặc định .
Thay đổi đường dẫn tệp mặc định --user-install
sẽ không ảnh hưởng tiêu cực đến bất cứ điều gì về hoạt động. Các Ruby GEM sẽ chỉ được cài đặt trong một ~/.gem
thư mục mà trong thư mục nhà của bạn, và Ruby sẽ biết để kiểm tra ở đó cũng như đường dẫn mặc định của chính nó để cập nhật.
--user-install
sẽ không ảnh hưởng tiêu cực đến bất kỳ điều gì về hoạt động. Bất cứ đường dẫn mới nào sẽ chỉ được thêm vào ~/.gemrc
tệp của bạn để cài đặt Ruby cục bộ của bạn có thể theo dõi nó như mọi thứ khác và làm bất cứ điều gì nó phải làm để duy trì hoạt động.
~/.gemrc
tập tin, ngay cả sau khi cài đặt. Bạn có ngụ ý rằng việc cài đặt sẽ tạo ra nó hay đó là một bước nữa tôi cần thực hiện thủ công?
~/.gemrc
; Tôi đã trộn lẫn các khái niệm và bây giờ nhận ra rằng các Ruby GEM được cài đặt cục bộ sẽ được cài đặt trong ~/.gem
đường dẫn là khóa học của khóa học trong thư mục nhà của người dùng. Cập nhật câu trả lời của tôi để làm rõ điều này.
--user-install
cho một viên ngọc (chẳng hạn như Jekyll chẳng hạn) có ảnh hưởng gì đến hoạt động, cập nhật trong tương lai, v.v. không? Hay Ruby được viết để vận hành theo cùng một cách cho dù đá quý ở trongGEM_HOME
hay ở nơi khác?