使用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. index.php错误,求指点2. 关于mysql unique的问题,如图所示3. css3动画 - CSS3 transition动画属性指定前后问题4. showpassword里的this 是什么意思?代表哪个元素5. html5 - 用h5本地存储是否安全?6. mysql怎么保存一件游戏装备,一般游戏开发是否用mysql7. c++ - pycharm 4.5 的 python -> preferences 找不到8. javascript - 求教各位,本地HTML页面怎么在DIV中嵌套服务器上的页面内容?不用iframe。9. javascript - 可以DIY的页面是如何实现的?10. javascript - 为什么js代码后面报错,会导致前面的代码执行不了,我确定后面的部分和前面的部分没有逻辑上的关联。