生产中的node_modules被另一台具有不同node_modules的本地机器弄乱了。现在,只要生产I git pull origin master
,就会显示以下消息:
ubuntu@ip-:~/proj$ git pull origin master
Enter passphrase for key '/home/ubuntu/.ssh/id_rsa':
From bitbucket.org:laics/proj
* branch master -> FETCH_HEAD
error: Your local changes to the following files would be overwritten by merge:
node_modules/gulp-autoprefixer/package.json
node_modules/gulp-complexity/package.json
node_modules/gulp-concat/package.json
node_modules/gulp-cssnano/node_modules/object-assign/package.json
node_modules/gulp-cssnano/package.json
node_modules/gulp-jsvalidate/node_modules/.bin/esparse
node_modules/gulp-jsvalidate/node_modules/.bin/esvalidate
node_modules/gulp-jsvalidate/node_modules/esprima/package.json
node_modules/gulp-jsvalidate/package.json
node_modules/gulp-less/node_modules/object-assign/package.json
node_modules/gulp-less/package.json
node_modules/gulp-ng-annotate/package.json
node_modules/gulp-notify/package.json
node_modules/gulp-rename/package.json
.........
node_modules/gulp-shell/node_modules/lodash/isEmpty.js
node_modules/gulp-shell/node_modules/lodash/isError.js
node_modules/gulp-shell/node_modules/lodash/isFunction.js
node_modules/gulp-shell/node_modules/lo
Aborting
最终我想要更新的文件不会更新。
答案 0 :(得分:2)
问题是你不应该检查node_modules
文件夹。否则你就是那个问题。通常,您的服务器上有一个脚本,它在您的服务器上运行该命令。
因此请使用
删除node_modules文件夹git rm --cached node_modules/
然后将其从回购中移除,但仍然在您的计算机上本地。然后将其放到.gitignore
并编写一个脚本,当您推送一些更改或使用部署系统部署更改时,该脚本会运行install命令。