31 Commits

Author SHA1 Message Date
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