2015-07-17 15 views
5

Tôi đang sử dụng gulp, bower, stylus cho một ứng dụng angularjs.Chúng ta có nên đẩy package.json, bower.json, gulpfile.js vào máy chủ sản xuất

Tôi không sử dụng bất kỳ công nghệ Continuous Integration, git pull ing mã từ repo cách thủ công khi git push được thực hiện để master chi nhánh trên bitbucket, xem xét tình huống này:

  1. Có một thực hành tốt để bao gồm bower.json, package.jsongulpfile.js trên máy chủ sản xuất và cài đặt các phụ thuộc theo cách thủ công bởi npm install hoặc bower install trên máy chủ?
  2. Có an toàn để bao gồm gulpfile.js trên máy chủ không?

Ngoài ra, nếu sử dụng bất kỳ công nghệ Continuous Integration nào, phương pháp hay nhất là gì?

tập tin .gitignore của tôi là như sau:

node_modules 
dist 
.tmp 
.sass-cache 
bower_components 
private.xml 
nbproject 
gruntfile.js 
gulpfile.js 
package.json 
+0

Không biết nhiều về sự xâm nhập vào sản xuất nhưng điều tôi nghĩ là bạn nên đẩy các cấu hình này lên máy chủ sản xuất. Lý do là, bạn có được một ca khúc của tất cả các gói đang được sử dụng trên sản xuất tại thời điểm hiện tại cũng như phiên bản của chúng. Phiên bản của các gói thực hiện rất nhiều sự khác biệt. Vì vậy, tôi nghĩ bạn nên làm điều đó. – binariedMe

+0

'gruntfile.js' được mặc định bao gồm trong' .gitignore' khi tôi tạo nó từ 'bower init'. 'grunt' và' gulp' tương tự nên tự hỏi phải làm gì? Để bao gồm 'gulpfile.js' trong' .gitignore' hay không! – imsheth

+0

Dude ... Tôi nói bạn nên bao gồm package.json và bower.json ... Không phải ở tất cả các bạn nên bao gồm tập tin grunt hoặc gulp ... Đây là giống như lệnh batch chúng tôi giữ để triển khai dự án hoặc một cái gì đó ... Vì vậy, những không được sử dụng trên sản xuất ... – binariedMe

Trả lời

5

Thêm package.json và bower.json file để giữ theo dõi của phụ thuộc mà đang được sử dụng trên máy chủ sản xuất. Tuy nhiên, bạn nên bỏ qua việc tải lên các tệp gulp hoặc grunt vì chúng chỉ dành cho mục đích sử dụng cục bộ. Chúng không cần thiết để được tải lên trên máy chủ sản xuất.

EDIT: Nếu bạn sử dụng grunt/gulp để khởi động lại máy chủ nút của bạn, như sử dụng nodemon từ grunt/gulp, Bạn có thể tải lên tập tin grunt/gulp. Cuối cùng nếu bạn có cấu trúc máy chủ nút của bạn đúng cách không có hại gây ra tập tin grunt/gulp trên máy chủ, vì chúng tương tác với hệ thống của bạn trước khi máy chủ bắt đầu.

+0

có bất kỳ hậu quả dự đoán nào nếu chúng tôi tải lên 'gruntfile.js' hoặc' gulpfile.js' không? Nếu bạn nhận thức được bất kỳ điều gì, và có thể liệt kê với bản chỉnh sửa - Tôi sẽ đánh dấu đó là câu trả lời hoàn hảo – imsheth

+1

Nếu bạn sử dụng grunt/gulp để khởi động lại máy chủ nút của bạn, chẳng hạn như sử dụng nodemon từ grunt/gulp, Bạn có thể tải lên tập tin grunt/gulp. Cuối cùng nếu bạn có cấu trúc máy chủ nút của bạn đúng cách không có hại gây ra tập tin grunt/gulp trên máy chủ, vì chúng tương tác với hệ thống của bạn trước khi máy chủ bắt đầu. – binariedMe

+0

chỉnh sửa câu trả lời ở trên và bao gồm điều này quá! – imsheth

0

Bạn có thể sử dụng gulp hay grunt nhiệm vụ Á hậu mà kéo tất cả các phụ thuộc bên ngoài như Angular, JQuery và bó chúng lại với nhau. Sau đó, sử dụng tệp được nhóm trên máy chủ sản xuất. Nó cũng sẽ giảm số lượng yêu cầu mà trình duyệt của bạn cần thực hiện để có được các tài nguyên đó. Để biết thêm, hãy đọc bài viết này:

https://scotch.io/tutorials/automate-your-tasks-easily-with-gulp-js#javascript-concat-and-minify

+0

Tôi đang tìm kiếm lý do hoặc thực hành tốt nhất để được theo dõi bao gồm bower.json, package.json và gulpfile.js trong gitignore hay không. Tôi biết cách dùng gulp. – imsheth

Các vấn đề liên quan