What do the selections after the "Bench update" command mean?


i tried to update the bench with “bench update” but this is what i got;

Cannot proceed with update: You have local changes in app "frappe" that are not committed.

Here are your choices:

1. Merge the frappe app manually with "git pull" / "git pull --rebase" and fix conflicts.
1. Temporarily remove your changes with "git stash" or discard them completely
        with "bench update --reset" or for individual repositries "git reset --hard"
2. If your changes are helpful for others, send in a pull request via GitHub and
        wait for them to be merged in the core.

what are those mean? what would happen if i select any one of them?

i did not have any local changes, i just created an app, then i deleted it completly

and i choosed “bench update --reset”, i am not sure what i did, can someone explain please?

1 Like

@meraki you can check the changes in frappe folder . open apps/frappe then run git diff --name-only . or just git diff .
if you are confident you had no changes go ahead with --reset . this will reinstall the frappe and erpnext apps to default . database will remain untouched .


Thank you for reply, but this doesn’t explain much, i need to know what each option does. I can get the differences after i run the commands, but i need to know before them, i need to know what i am doing.

1 Like

Hi @meraki :

Each apps folder is a local git repository . bench update try to update each app from remote repository, so if bench update detects any change on your local folder that as not commited to remote repository, then stops and gives you 2 options:

1. Using git commands (git pull / git pull --rebase) try to merge 2 sources and fix conflicts, or git stash to temporarily move the changes …

2. bench update --reset discarding all your local changes and overwriting with remote repositories content.

I don’t know what kind of changes you did on your apps before bench update --reset but they are gone if no backup was made.

Hope this helps.


Hi @avc thank you for reply and thank you for explanation.