gatilin222
@gatilin222
Frontend-разработчик

Как не прописывать gulp install каждый раз?

Каждый раз, начиная проект на gulp(клон с гита), прописываю в консоли строку типа этой:
npm install gulp gulp-jade gulp-sass gulp-csso gulp-imagemin imagemin-pngquant gulp-uglify gulp-concat gulp-connect gulp-open --save-dev
Можно как-то автоматизировать этот процесс?
  • Вопрос задан
  • 543 просмотра
Решения вопроса 2
Создать стандартный package.json, кидать его в папку с проектом и выполнять npm install.
Более серьезная автоматизация требуется, если вы создаете проект чаще, чем хотя бы раз в день.
Ответ написан
Комментировать
Еще, чтобы для каждого проекта не выполнять npm i (установка пакетов в папку с проектом), установите все пакеты, которые используются на уровень выше папок с проектами.
К примеру у меня node_modules лежит сразу на диске G, а работаю я в папке G://Dropbox/Web_pr/***
И мне нужно только переносить файл gulpfile.js
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
andykov
@andykov
Shit happens
После того как вы пишите флаг --save-dev, плагин или плагины в вашем случае записываются в файл package.json
в таком виде:
"devDependencies": {
    "gulp": "^3.9.0",
    "gulp-autoprefixer": "^2.1.0",
  }


Далее чтобы каждый раз их не писать, просто вводите npm install и установится все что находится в devDependencies.
Т.е. вам нужно держать в гите файлик package.json с уже прописанными зависимостями.
Ответ написан
@lnked
Написал для этого shell script, создание нового проекта выглядит так ./install.sh
#!/bin/bash 

folder_name=$1 #присваиваем переменной parametr1 значение первого параметра скрипта

# тут нужно указать правильный путь
ROOT='/Applications/MAMP/htdocs/markup.dev'
GREEN='\033[0;32m'
RED='\033[0;31m'
NC='\033[0m'

echo -e " "

# Создаем папку проекта если ее нет
#
if [ -d "$folder_name" ] ; then
	echo -e "${RED}Папка $folder_name существует${NC}\n"
else
	mkdir $folder_name
	echo -e "${GREEN}Создана папка $folder_name${NC} \n"
fi

# Переходим в папку
#
cd ./$folder_name

# создаем ссылку на папку node_modules, в итоге у нас 1 папка с плагинами и диск не захламляется 
ln -s ${ROOT}/clean/node_modules/ ${ROOT}/$folder_name/

mkdir assets dist assets/template assets/scripts assets/images assets/styles assets/fonts

# Копируем файлы

cp -r ${ROOT}/clean/.jshintrc ${ROOT}/$folder_name/.jshintrc
cp -r ${ROOT}/clean/gulpfile.js ${ROOT}/$folder_name/gulpfile.js
cp -r ${ROOT}/clean/package.json ${ROOT}/$folder_name/package.json
cp -r ${ROOT}/clean/assets/template/* ${ROOT}/$folder_name/assets/template/
cp -r ${ROOT}/clean/assets/styles/* ${ROOT}/$folder_name/assets/styles/
cp -r ${ROOT}/clean/assets/scripts/* ${ROOT}/$folder_name/assets/scripts/

echo -e "Проект ${GREEN}$folder_name${NC} успешно создан"

gulp build
gulp

exit 0
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Еще есть yoman который придумали именно для автоматизации создания базовых приложений. Единственное что придется написать шаблон для приложения, зато выходит очень гибко.
Ответ написан
sosnovskyas
@sosnovskyas
YO или yoman. много где используется и имеет уже много готовых шаблонов и в конце концов можете свой сделать или подправить существующий. Сделай горсть шаблонов для типовых проектов и вперёд
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы