Repository is not clean. Please commit or stash any changes before updating In Angular 8

AngularTypescriptGitAngular CliAngular8

Angular Problem Overview


Error

>Repository is not clean. Please commit or stash any changes before updating

when i have updated from version 7 to Angular 8.

Angular Guide for upgrade https://update.angular.io/#7.0:8.0

  D:\app-test> ng update @angular/cli @angular/core
               npm cache verify
                

>Repository is not clean. Please commit or stash any changes before updating.

Update Version

    PS D:\app-test> ng update
				Using package manager: 'npm'
				Collecting installed dependencies...
				Found 58 dependencies.
					We analyzed your package.json, there are some packages to update:

					  Name                               Version                  Command to update
					 --------------------------------------------------------------------------------
					  @angular/cdk                       7.2.2 -> 8.0.1           ng update @angular/cdk
					  @angular/core                      7.2.15 -> 8.0.1          ng update @angular/core
					  @angular/core                      7.2.2 -> 7.2.15          ng update @angular/core
					  @angular/material                  7.3.7 -> 8.0.1           ng update @angular/material
					  rxjs                               6.3.3 -> 6.5.2           ng update rxjs


					There might be additional packages that are outdated.
					Run "ng update --all" to try to update all at the same time.

				PS D:\app-test> ng update @angular/cdk
				Repository is not clean.  Please commit or stash any changes before updating.

i have checked git was not installed in project.

solution that worked

   git commit 

After Googling i have This is happening After Angular 8.

Bug

https://github.com/angular/angular-cli/issues/14600

Angular Solutions


Solution 1 - Angular

It's a bug in Angular 8

you can work around it by using:

ng update @angular/cli @angular/core --allow-dirty

Solution 2 - Angular

I have tried using mention command for upgrading from angular 8 to angular 9, but was still getting the error.

Then i have tried same command with --force flag and it worked for me.

ng update @angular/cli @angular/core --allow-dirty --force

Solution 3 - Angular

I've had the same issue. It's a common bug in Angular 8. Simply you can use dirty commands to bypass the repo check, such as (if u really need to bypass this, follow force commands)

ng update @angular/cli @angular/core --allow-dirty or
ng update @angular/cli @angular/core --allow-dirty --force

but, I didn't do that. I followed following steps...

first of all double check whether you are commited all the changes before the update.then keep a copy of the project to the same location and commit the copy also to the Git. then run following command from the original project directory

ng update @angular/core@8 @angular/cli@8

afterwards u can delete the copy. This worked for me! thank you!

Solution 4 - Angular

I faced the same issue, which I resolved using the below command

git stash --include-untracked

Solution 5 - Angular

Worked for me

sudo npm update @angular/cli @angular/core --allow-dirty --legacy-peer-deps

Solution 6 - Angular

in my case, this was due to a node_modules folder not being excluded by the .gitignore. once added, this error no longer appeared

Solution 7 - Angular

It might appear in many cases. Just commit or stash any changes and run the command again.

Solution 8 - Angular

First, Check if there are any changes in your code that haven't pushed to git if yes push them, then close the old instance(cmd) and open a new instance of cmd then run the command. This worked for me, Thanks

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionafeefView Question on Stackoverflow
Solution 1 - AngularAbdullah AdeebView Answer on Stackoverflow
Solution 2 - Angularsharad jainView Answer on Stackoverflow
Solution 3 - AngularMrMalithView Answer on Stackoverflow
Solution 4 - AngularSathiaView Answer on Stackoverflow
Solution 5 - Angularjonathasborges1View Answer on Stackoverflow
Solution 6 - AngularjgrittenView Answer on Stackoverflow
Solution 7 - AngularExperimenterView Answer on Stackoverflow
Solution 8 - AngularRaviteja JavvadiView Answer on Stackoverflow