使用git管理webpack的代码时多人怎么协作?一般托管哪些文件?
问题描述
使用webpack需要安装很多加载器、npm包,git管理的时候需要上传node_modules目录吗?这个目录是不是太大了,但是不上传的话,每个参入开发的人都需要自己去下载那一堆的加载器吗?
问题解答
回答1:利用package.json管理你的npm包1、项目初始化的时候使用npm init初始化package.json配置文件;2、package.json里面有两个字段devDependencies和dependencies两个字段分别表示开发环境需要的npm包和部署环境需要的npm包。3、同步代码的时候大家只需要同步一下package.json文件,然后执行npm install命令,npm会自动检索package.json中的配置,安装相应的node_modules。这里给出我的一个项目的package.json的相应字段;
'dependencies': {}, 'devDependencies': { 'babel-preset-es2015': '^6.6.0', 'gulp': '^3.9.1', 'gulp-babel': '^6.1.2', 'gulp-concat': '^2.6.0', 'gulp-connect': '^2.3.1', 'gulp-minify-css': '^1.2.3', 'gulp-sass': '^2.1.1', 'gulp-uglify': '^1.5.1', 'shelljs': '^0.7.0' }
可以看到npm包名和版本号都有记录,这样能保证大家的环境统一。最后,负责项目基础配置的人在初始化项目时:
使用npm install命令时添加--save,会自动去package.json中的dependencies下添加相应的包名和版本。
使用npm install命令时添加--save-dev,会自动去package.json中的devDependencies下添加相应的包名和版本。
相关文章:
1. angular.js - ng-grid 和tabset一起用时,grid width默认特别小2. python for循环中的函数只能运行一次?3. css - transform-origin 旋转参考点4. html5 - 在一个页面中 初始了两个swiper 不知道哪里错了 一直不对5. selenium-基于python2-126邮箱登陆问题6. python的文件读写问题?7. 能用Nginx服务小型购物网站的web吗?8. python - pyspider爬取了接近1G的数据,无法导出csv?9. android - 美团筛选处筛选条件停靠+条件点击滑动到顶部。10. 请问是对象还是数组
