节点项目的Azure git部署失败

时间:2015-04-05 00:13:39

标签: node.js git azure

我正在尝试将我的项目部署到azure。它失败了。这些是我采取的步骤。

git init
git config core.longpaths true
git add .
git commit -m "initial commit"

一切正常。我配置git接受长路径,因为我需要chokidar,而chokidar有一些深层嵌套的依赖关系,如果没有这个,最大化git的字符限制。然后我转到azure,创建一个新的Web应用程序,选择自定义,从本地git存储库部署,将远程repo添加到本地git。一切正常。但是当我运行git push azure master时,我收到此错误:

remote: Updating branch 'master'.
remote: Deployment failed
remote: Error - Changes committed to remote repository but deployment to website failed.

所以我去了一个空目录,启用了长路径,并克隆了回购。它给了我这个错误:

remote: warning: unable to access 'node_modules/chokidar/node_modules/anymatch/node_modules/micromatch/node_modules/regex-cache/node_modules/benchmarked/node_modules/file-reader/node_modules/map-files/node_modules/globby/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/test/.gitattributes': Filename too long
remote: Counting objects: 5183, done.
remote: Compressing objects: 100% (3893/3893), done.
remote: Total 5183 (delta 489), reused 5183 (delta 489)
Receiving objects: 100% (5183/5183), 4.05 MiB | 1.51 MiB/s, done.
Resolving deltas: 100% (489/489), done.
Checking connectivity... done.
fatal: cannot create directory at 'node_modules/chokidar/node_modules/anymatch/node_modules/micromatch/node_modules/regex-cache/node_modules/benchmarked/node_modules/file-reader/node_modules/map-files/node_modules/globby/node_modules/array-union/node_modules/array-uniq': Filename too long
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status' and retry the checkout with 'git checkout -f HEAD'

上面的第一个错误要多得多。所以我认为在他们的服务器上运行的Git Azure没有配置为接受长文件路径?我可以从版本控制中删除node_modules并配置azure来下载它们吗?

1 个答案:

答案 0 :(得分:1)

你是对的

  1. 将/ node_modules添加到.gitignore。
  2. 向packages.json添加依赖项,并让Azure在部署时安装它们(每次新/更新的程序包只安装一次)。
  3. PS:由于您已经将/ node_modules文件夹推送到版本控制,因此您必须先将其删除。