Commit Graph

10 Commits

Author SHA1 Message Date
4bb8afde02 Reset any stash changes before proceeding if there were conflicts
If the worktree has conflicts after applying the user's changes from the
autostash, we should reset them before proceeding to ensure we are in
a working state. When there are conflicts, git still keeps the stash
entry, so the user will still be able to manually re-pop the stash and
resolve the conflicts after `omarchy-update` has finished.

In the case of conflicts, the output will look something like this (I've
omitted most of the normal `git pull` output, hence the `[...]`):

```
Updating 729cd6a..45b5d3e
Created autostash: 91853c4
Fast-forward
 bin/omarchy                                                                |  10 +++++++---
 [...]
 create mode 100644 themes/tokyo-night/backgrounds/2--Milad-Fakurian-Abstract-Purple-Blue.jpg
Applying autostash resulted in conflicts.
Your changes are safe in the stash.
You can run "git stash pop" or "git stash drop" at any time.
bin/omarchy:65: leftover conflict marker
```

before proceeding with the rest of the `omarchy-update` script from a
clean state. So the user will see 1) that there were conflicts when
applying the autostashed changes, 2) that their changes are still safe
in the stash, and 3) which files (and lines) had conflict markers.
2025-07-17 23:06:25 -07:00
cc0ac314ef Use git pull --autostash in omarchy-update
This is a minor follow-up to dcc4071979
to leverage the `--autostash` flag of `git pull` which does the same
thing we were doing in three separate commands.

This also avoids the possibility of popping something from the stash
that `omarchy-update` didn't actually stash. In other words, if the
initial `git stash` was a no-op (because there were no changes in the
working tree), it's actually not desirable for `omarchy-update` to
`git stash pop` at the end, since that potentially pops something the
user had manually stashed (we only want `omarchy-update` to pop its own
stash entry). Using `--autostash` handles this correctly.

Ref:
https://git-scm.com/docs/git-pull#Documentation/git-pull.txt---autostash
2025-07-17 19:13:35 -07:00
25459cb539 Confirm before updating system packages 2025-07-17 09:39:42 -07:00
dcc4071979 Stash/pop any local changes before pulling updates
More user customizations will survive without commits.
2025-07-17 09:39:31 -07:00
55f30eba66 No need to confirm the upgrade 2025-07-09 19:49:10 -07:00
8fb9b51d03 Update system packages when updating omarchy 2025-07-09 18:33:06 -07:00
e7766926d9 Make it easier to read 2025-07-09 19:12:26 -04:00
dedc08a76e Allow you to easily run all migrations by passing "all"
Helpful for testing or if something went wrong
2025-06-29 12:49:51 -07:00
2a2a77685c Add migration system and fix bluetooth service + missing bat 2025-06-28 11:46:28 -07:00
55a3130218 Update Omarchy via git pull 2025-06-25 16:47:23 -07:00