使用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. windows - asp.net连接上mysql之后如何调用?比如下面的登录验证功能怎么实现2. css3 - Typecho 后台部分表单按钮在 Chrome 下出现灵异动画问题,求解决3. javascript - 编程,算法的问题4. 刚放到服务器的项目出现这中错误,有高手指点吗5. mysql - 面试题:如何把login_log表转换成last_login表?6. javascript - 为什么嵌套的Promise不能按预期捕获Exception?7. java - HTTPS双向认证基础上有无必要再进行加签验签?8. apache - 想把之前写的单机版 windows 软件改成网络版,让每个用户可以注册并登录。类似 qq 的登陆,怎么架设服务器呢?9. javascript - nodejs实现异步时遇到的一个问题10. java - 阿里的开发手册中为什么禁用map来作为查询的接受类?
