34 Commits

Author SHA1 Message Date
Mike McQuaid
fc40424f0e
cmd/update-reset: remove .git/describe-cache.
As this is a cache and can potentially be incorrect, let's allow this
way of cleaning it up.
2024-12-03 14:30:14 +00:00
Mike McQuaid
5987c5c1d0
Add stub Ruby commands for all Bash commands.
This gets us pretty similar (but easier to manage) manpage output but
much nicer completions etc. for all these commands.
2024-07-14 23:12:53 -04:00
Mike McQuaid
b1cbe47e45
cmd/update-reset: use stable tag.
Currently we always reset Homebrew/brew onto the latest `master`.
Instead, let's correctly use the latest tag when appropriate.
2024-03-14 16:41:30 +00:00
Adrian Ho
ff42a4e3b7 update*: check shim output
The shims _Should Not Fail_, but [when bugs happen](https://github.com/orgs/Homebrew/discussions/4331), they just cause confusing errors.
2023-03-22 18:03:47 +08:00
Carlo Cabrera
53053e0625
cmd/update-reset: improve arg validation
This is based on feedback from #14667.
2023-02-28 20:38:00 +08:00
Carlo Cabrera
12364d70d2
Revert "cmd/update-reset: accept tap names as arguments"
This reverts commit ac7dbc008284e1a85353548eb8e15c008be902ec.
2023-02-28 20:30:40 +08:00
Carlo Cabrera
ac7dbc0082
cmd/update-reset: accept tap names as arguments
Currently, doing `brew update-reset homebrew/core` does nothing (not
even return an error). If you want to `update-reset` a given tap, you
must do (the equivalent of)

    brew update-reset "$(brew --repository owner/tap_name)"

This isn't very intuitive, so let's do a bit more work in argument
parsing so that the user can just pass a tap name instead of a path to a
tap.

Passing a path to a tap is also still supported.
2023-02-16 23:57:31 +08:00
Adrian Ho
5155c9073b update*: enforce sane symlinks setting
Otherwise, a global `core.symlinks = false` setting, likely in a WSL context, breaks Aliases and any other places that use symlinks.

Also enforce consistency in `git config` settings across instances.

Ref: https://github.com/Homebrew/homebrew-core/issues/112539
2022-10-08 22:03:37 +08:00
Maxim Belkin
13735bc780
Apply Mike's suggestions from code review
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
2022-04-26 08:35:28 -07:00
Maxim Belkin
27a2dba340
update/update-reset: warn when no origin remote
Current situation with update.sh & update-reset.sh:

Upon creating a new tap and before adding remote 'origin' to it,
running `brew update` produces multiple cryptic error messages.
This change converts these cryptic Git messages into clear warnings
about absent remote 'origin'.

How to test:
1. Create a new tap using `brew tap-new`
2. Run `brew update`
2022-04-26 08:35:27 -07:00
Bo Anderson
549eaa1563
cmd/update-reset: fix errors when the git shim changes in a brew update 2021-10-05 03:46:54 +01:00
XuehaiPan
43377a3e5e style: fix inconsistent code style for shell scripts by runing brew style --fix 2021-09-16 01:08:02 +08:00
XuehaiPan
3f96d963f7 style: fix inconsistent code style for shell scripts 2021-09-15 14:59:01 +08:00
Gautham Goli
a9236a3bf7 update-reset.sh: Fix shellcheck style errors 2021-04-24 11:11:09 +05:30
Rylan Polster
f508f8dc0c
update: show message prompting brew tap --repair
This message is shown when a fetch fails due to a branch rename
2021-01-28 09:10:13 -05:00
Rylan Polster
d1f3e39b7b
Update commands to generate usage banner 2021-01-18 21:20:11 -05:00
Dawid Dziurla
332372469f
cmd: indicate multiple named args in usage banner 2021-01-15 13:04:00 +01:00
Bo Anderson
fc7c3c923a cmd/update-reset: fix handling of multiple relative directories 2020-08-19 12:32:46 +01:00
Shaun Jackman
b4fc3ead1e update-reset: Use the default branch origin/HEAD
Use the default branch of the repo, origin/HEAD.
2020-06-17 17:26:15 -07:00
Shaun Jackman
b5584fc035 update: Update the symbolic ref origin/HEAD 2020-06-16 23:20:04 -07:00
EricFromCanada
0242084929 shell commands: colourize messages 2019-11-21 16:18:46 -05:00
EricFromCanada
b4303cd983 manpages: fix command & option descriptions 2019-08-20 09:03:33 -04:00
EricFromCanada
6340792f78 manpages: output formatting fixes 2019-08-20 08:28:35 -04:00
Mike McQuaid
4101bfda81
update-reset: avoid hanging on shallow-since.
For some reason this seems to hang when there's been no commits since
the latest tag. Not a problem in `brew update`.
2019-02-02 18:34:44 +01:00
Mike McQuaid
2b285f23c2
update-reset: improve --help formatting. 2019-01-30 21:38:45 +00:00
Mike McQuaid
06a66e254e
update-reset: fix Bash syntax.
This isn't valid syntax for a Bash array.
2018-10-08 18:41:46 +01:00
Mike McQuaid
4feb851279
Fix brew style shellcheck warnings. 2018-10-07 22:08:59 +01:00
Mike McQuaid
3063b7fade
update-reset: allow specifying repositories.
This makes it easier to use this in e.g. CI to quickly reset various
repositories to their upstream versions.
2018-09-18 21:14:21 +01:00
Markus Reiter
bdc2458c15 Always fetch at least the latest tag. 2018-08-11 00:46:29 +02:00
ilovezfs
17f80a44e6
Revert "Use Homebrew's gitconfig for various commands" 2018-01-15 07:30:56 +00:00
Mike McQuaid
228cbd81c9 Use Homebrew's gitconfig for various commands
Git is a transport and storage mechanism for us so we don't want to
allow arbitrary customisation of this due to user issues e.g. #3664
and #3561.

Fixes #3664.
2018-01-11 20:40:59 +00:00
Mike McQuaid
6114f48d5d Unhide readall and update-reset from manpage.
These are both tools that end-users can find useful on occasion so it
doesn't make sense to hide them.
2017-10-26 16:14:14 +01:00
Mike McQuaid
3c91f5858a update-reset: checkout with --force.
Otherwise it won't overwrite unmerged changes.
2017-01-26 16:29:39 +00:00
Mike McQuaid
d21f6954b6 update-reset: add new command.
Add new `brew update-reset` command to provide a helpful troubleshooting
fallback to fetch and reset all repositories. This could have lived in
`brew update` but it makes sense to avoid the complexity of sharing
logic between these scripts and keeping this one simpler.
2016-12-18 15:25:18 -08:00