2013-04-21 10 views
23

Tôi đang sử dụng bower để cài đặt các phụ thuộc cho dự án của tôi (Tôi biết có yeoman nhưng tôi đang sử dụng bower). Sau khi thiết lập tệp component.json, khi tôi cài đặt bower, nó cài đặt các phụ thuộc vào đúng thư mục nhưng nó cũng cài đặt nhiều tệp không cần thiết khác với nó. Bây giờ tôi muốn bower để cài đặt các tập tin cụ thể đó là cần thiết ví dụ jquery.js, backbone.js and underscore.js và không có gì khác. Làm thế nào tôi có thể làm điều đó với bower?bower cài đặt nhiều tệp. tại sao và làm thế nào tôi có thể thay đổi nó?

+6

Tôi đồng ý, tôi không muốn tôi môi trường sản xuất rải rác với các tập tin không cần thiết. – wbeange

Trả lời

5

Tùy thuộc vào tác giả của gói để chỉ định loại tệp cần loại trừ khỏi gói sử dụng thuộc tính ignore. Bây giờ, chỉ cần bao gồm các tệp bạn muốn trong ứng dụng/trang web của bạn và bỏ qua phần còn lại.

7

Bạn có thể xem bower-installer.

bower list --path thường nói về tệp js chính trong gói, trong đó bower-installer thuận tiện chọn và chỉ xuất các tệp đó vào thư mục nội dung của bạn. Sau đó, bạn có thể sử dụng thư mục này và bỏ qua thư mục bower_components.

18

Tôi mới đây wrote up a possible solution cho sự cố này và sẽ làm nổi bật những điểm chính bên dưới.

Nếu bạn biết bạn muốn một tệp cụ thể từ một gói cụ thể, thật dễ dàng để yêu cầu người gửi chỉ lấy tệp đó. Ví dụ: với normalize.css, tệp duy nhất mà tôi quan tâm là, tốt, normalize.css. Vì vậy, thay vì gõ:

bower install --save normalize-css 

tôi có thể cụ thể hơn và nói Chòi chơi chỉ cần tải về css file:

bower install --save https://raw.github.com/necolas/normalize.css/master/normalize.css 

đó, tất nhiên, sẽ luôn luôn lấy phiên bản mới nhất của bình thường hóa từ kho lưu trữ của master branch khi bower install được gọi cho dự án của bạn. Tuy nhiên, nếu tôi muốn chắc chắn rằng tôi luôn luôn nhận được phiên bản 3.0.0 của bình thường hóa, sau đó tôi có thể khai thác thông qua các phiên bản/lịch sử để tìm ra địa chỉ URL và viola thích hợp:

bower install --save http://necolas.github.io/normalize.css/3.0.0/normalize.css 
+12

Có lẽ điều này không làm phiền bất kỳ ai khác - nhưng, ý tưởng là Bower cài đặt các phần lớn GitHub cho máy chủ của bạn, hầu hết trong số đó không bao giờ được nhà phát triển xúc động và không cung cấp API sạch để cài đặt các tệp chỉ sản xuất ? Ít nhất cung cấp tùy chọn. – tfmontague

+1

@tfmontague Bower không đưa ra giả định về những gì bạn muốn tải xuống. Nó là tùy thuộc vào từng nhà phát triển gói để tạo ra một nhánh sạch mà không có tất cả các lông tơ. Thật không may, nhiều nhà phát triển để lại tất cả các công cụ phụ nằm trên cùng một chi nhánh mà Bower đang kéo. – jbranchaud

+2

Điểm tốt nhưng bạn nên cung cấp cho mẫu với jQuery mà rõ ràng là không hoạt động. Làm thế nào bạn có thể biết được url đầy đủ khi mục đích sử dụng bower ở nơi đầu tiên là tạo một tải xuống nhanh, tôi cũng có thể sử dụng 'Lưu dưới dạng' từ url đầy đủ trực tiếp trên trình duyệt của tôi. Offfhh ... công nghệ đôi khi – Shina