Kis*_*rra 5 git github typescript angular-cli angular-cli-v7
将 angular 7 更新为 angular 8,我angular/cli angular/core使用命令成功更新$ ng update @angular/cli@v8 @angular/core@v8。而且我也使用了有角度的材料,所以我想更新材料,然后我用$ ng update @angular/material@v8. 但是在运行命令后我得到了Repository is not clean. Please commit or stash any changes before updating.
所以我在更改 git 之前提交,然后我再次尝试使用相同的命令,然后也得到相同的消息。现在没有要提交或存储的文件。
这是package.json文件的依赖关系:
"dependencies": {
"@angular/animations": "^8.0.0",
"@angular/cdk": "^7.3.7",
"@angular/common": "^8.0.0",
"@angular/compiler": "^8.0.0",
"@angular/core": "^8.0.0",
"@angular/forms": "^8.0.0",
"@angular/material": "^7.3.7",
"@angular/platform-browser": "^8.0.0",
"@angular/platform-browser-dynamic": "^8.0.0",
"@angular/router": "^8.0.0",
"core-js": "^2.5.4",
"hammerjs": "^2.0.8",
"ngx-loading": "^3.0.1",
"rxjs": "6.5.2",
"underscore": "^1.9.1",
"zone.js": "~0.9.1"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.800.0",
"@angular/cli": "~8.0.2",
"@angular/compiler-cli": "^8.0.0",
"@angular/language-service": "^8.0.0",
"@types/jasmine": "~2.8.6",
"@types/jasminewd2": "~2.0.3",
"@types/node": "~8.9.4",
"bootstrap-sass": "^3.3.7",
"codelyzer": "^5.0.1",
"jasmine-core": "~2.99.1",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~1.7.1",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.0",
"karma-jasmine": "~1.1.1",
"karma-jasmine-html-reporter": "^0.2.2",
"karma-scss-preprocessor": "^3.0.0",
"protractor": "~5.3.0",
"ts-node": "~5.0.1",
"tslint": "~5.9.1",
"typescript": "~3.4.5"
}
这是我收到的消息:
D:\test>ng update @angular/material@v8
Repository is not clean. Please commit or stash any changes before updating.
我删除了 node_modules 文件夹并在$ npm install --save. 安装后我再次尝试,然后也收到相同的消息。
有谁知道,如何更新材料?
您提到您有未跟踪的文件。这些导致检查失败(带有未跟踪文件的 git 存储库被认为是不干净的)。更多关于这里。
您可以ng在此处查看该工具如何运行此检查:https : //github.com/angular/angular-cli/blob/3d25d4cb/packages/angular/cli/commands/update-impl.ts#L351
您可以使用以下方式隐藏这些文件:
git stash save --include-untracked
Run Code Online (Sandbox Code Playgroud)
并在运行更新后取消隐藏它们:
git stash pop
Run Code Online (Sandbox Code Playgroud)
您的其他选择是删除文件或将它们添加到您的.gitignore.
--allow-dirty如果您想绕过该警告,您应该使用它,它适用于 @angular/cli v8.0.1+。
您的更新命令@angular/material如下所示:
ng update @angular/material@v8 --allow-dirty
Run Code Online (Sandbox Code Playgroud)
要更新您可以使用的所有软件包:
ng update -all --allow-dirty
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7621 次 |
| 最近记录: |