Git for Production搞砸了合并错误

时间:2017-02-16 20:48:16

标签: git bitbucket git-pull

生产中的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

最终我想要更新的文件不会更新。

1 个答案:

答案 0 :(得分:2)

问题是你不应该检查node_modules文件夹。否则你就是那个问题。通常,您的服务器上有一个脚本,它在您的服务器上运行该命令。

因此请使用

删除node_modules文件夹
git rm --cached node_modules/

然后将其从回购中移除,但仍然在您的计算机上本地。然后将其放到.gitignore并编写一个脚本,当您推送一些更改或使用部署系统部署更改时,该脚本会运行install命令。