使用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. 主从备份 - 跪求mysql 高可用主从方案2. python - django 里自定义的 login 方法,如何使用 login_required()3. python如何不改动文件的情况下修改文件的 修改日期4. mysql主从 - 请教下mysql 主动-被动模式的双主配置 和 主从配置在应用上有什么区别?5. angular.js - 不适用其他构建工具,怎么搭建angular1项目6. android-studio - Android 动态壁纸LayoutParams问题7. mysql优化 - mysql count(id)查询速度如何优化?8. javascript - git clone 下来的项目 想在本地运行 npm run install 报错9. sql语句如何按or排序取出记录10. node.js - 使用 superagent 抓取 UTF-8网站乱码
