|
| 1 | +<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --> |
| 2 | +[](#contributors-) |
| 3 | +<!-- ALL-CONTRIBUTORS-BADGE:END --> |
| 4 | +[](https://github.com/avelino/awesome-go) |
| 5 | +[](https://github.com/nao1215/gup/actions/workflows/reviewdog.yml) |
| 6 | + |
| 7 | +[](https://github.com/nao1215/gup/actions/workflows/security.yml) |
| 8 | +[](https://pkg.go.dev/github.com/nao1215/gup) |
| 9 | +[](https://goreportcard.com/report/github.com/nao1215/gup) |
| 10 | + |
| 11 | + |
| 12 | +[日本語](../ja/README.md) | [Русский](../ru/README.md) | [中文](../zh-cn/README.md) | [한국어](../ko/README.md) | [Español](../es/README.md) | [Français](../fr/README.md) |
| 13 | + |
| 14 | +# gup - Actualizar binarios instalados por "go install" |
| 15 | + |
| 16 | + |
| 17 | + |
| 18 | +El comando **gup** actualiza los binarios instalados por "go install" a la versión más reciente. gup actualiza todos los binarios en paralelo, por lo que es muy rápido. También proporciona subcomandos para manipular binarios bajo $GOPATH/bin ($GOBIN). Es un software multiplataforma que se ejecuta en Windows, Mac y Linux. |
| 19 | + |
| 20 | +Si estás usando oh-my-zsh, entonces gup tiene un alias configurado. El alias es `gup - git pull --rebase`. Por lo tanto, asegúrate de que el alias de oh-my-zsh esté deshabilitado (e.g. $ \gup update). |
| 21 | + |
| 22 | + |
| 23 | +## OS Soportados (pruebas unitarias con GitHub Actions) |
| 24 | +- Linux |
| 25 | +- Mac |
| 26 | +- Windows |
| 27 | + |
| 28 | +## Cómo instalar |
| 29 | +### Usar "go install" |
| 30 | +Si no tienes el entorno de desarrollo de golang instalado en tu sistema, por favor instala golang desde el [sitio web oficial de golang](https://go.dev/doc/install). |
| 31 | +``` |
| 32 | +go install github.com/nao1215/gup@latest |
| 33 | +``` |
| 34 | + |
| 35 | +### Usar homebrew |
| 36 | +```shell |
| 37 | +brew install nao1215/tap/gup |
| 38 | +``` |
| 39 | + |
| 40 | +### Instalar desde Paquete o Binario |
| 41 | +[La página de releases](https://github.com/nao1215/gup/releases) contiene paquetes en formatos .deb, .rpm y .apk. El comando gup usa el comando go internamente, por lo que se requiere la instalación de golang. |
| 42 | + |
| 43 | + |
| 44 | +## Cómo usar |
| 45 | +### Actualizar todos los binarios |
| 46 | +Si quieres actualizar todos los binarios, simplemente ejecuta `$ gup update`. |
| 47 | + |
| 48 | +```shell |
| 49 | +$ gup update |
| 50 | +update binary under $GOPATH/bin or $GOBIN |
| 51 | +[ 1/30] github.com/cheat/cheat/cmd/cheat (Already up-to-date: v0.0.0-20211009161301-12ffa4cb5c87 / go1.22.4) |
| 52 | +[ 2/30] fyne.io/fyne/v2/cmd/fyne_demo (Already up-to-date: v2.1.3 / go1.22.4) |
| 53 | +[ 3/30] github.com/nao1215/gal/cmd/gal (v1.0.0 to v1.2.0 / go1.22.4) |
| 54 | +[ 4/30] github.com/matsuyoshi30/germanium/cmd/germanium (Already up-to-date: v1.2.2 / go1.22.4) |
| 55 | +[ 5/30] github.com/onsi/ginkgo/ginkgo (Already up-to-date: v1.16.5 / go1.22.4) |
| 56 | +[ 6/30] github.com/git-chglog/git-chglog/cmd/git-chglog (Already up-to-date: v0.15.1 / go1.22.4) |
| 57 | + : |
| 58 | + : |
| 59 | +``` |
| 60 | + |
| 61 | +### Actualizar el binario especificado |
| 62 | +Si quieres actualizar solo los binarios especificados, especifica múltiples nombres de comandos separados por espacio. |
| 63 | +```shell |
| 64 | +$ gup update subaru gup ubume |
| 65 | +update binary under $GOPATH/bin or $GOBIN |
| 66 | +[1/3] github.com/nao1215/gup (v0.7.0 to v0.7.1, go1.20.1 to go1.22.4) |
| 67 | +[2/3] github.com/nao1215/subaru (Already up-to-date: v1.0.2 / go1.22.4) |
| 68 | +[3/3] github.com/nao1215/ubume/cmd/ubume (Already up-to-date: v1.4.1 / go1.22.4) |
| 69 | +``` |
| 70 | + |
| 71 | +### Excluir binarios durante gup update |
| 72 | +Si no quieres actualizar algunos binarios, simplemente especifica los binarios que no deben actualizarse separados usando ',' sin espacios como delimitador. |
| 73 | +También funciona en combinación con --dry-run |
| 74 | +```shell |
| 75 | +$ gup update --exclude=gopls,golangci-lint //--exclude o -e, este ejemplo excluirá 'gopls' y 'golangci-lint' |
| 76 | +``` |
| 77 | + |
| 78 | +### Actualizar binarios con @main o @master |
| 79 | +Si quieres actualizar binarios con @master o @main, puedes especificar la opción -m o --master. |
| 80 | +```shell |
| 81 | +$ gup update --main=gup,lazygit,sqly |
| 82 | +``` |
| 83 | + |
| 84 | +### Listar el nombre del comando con ruta del paquete y versión bajo $GOPATH/bin |
| 85 | +El subcomando list imprime información de comandos bajo $GOPATH/bin o $GOBIN. La información de salida es el nombre del comando, ruta del paquete y versión del comando. |
| 86 | + |
| 87 | + |
| 88 | +### Eliminar el binario especificado |
| 89 | +Si quieres eliminar un comando bajo $GOPATH/bin o $GOBIN, usa el subcomando remove. El subcomando remove pregunta si quieres eliminarlo antes de eliminarlo. |
| 90 | +```shell |
| 91 | +$ gup remove subaru gal ubume |
| 92 | +gup:CHECK: remove /home/nao/.go/bin/subaru? [Y/n] Y |
| 93 | +removed /home/nao/.go/bin/subaru |
| 94 | +gup:CHECK: remove /home/nao/.go/bin/gal? [Y/n] n |
| 95 | +cancel removal /home/nao/.go/bin/gal |
| 96 | +gup:CHECK: remove /home/nao/.go/bin/ubume? [Y/n] Y |
| 97 | +removed /home/nao/.go/bin/ubume |
| 98 | +``` |
| 99 | + |
| 100 | +Si quieres forzar la eliminación, usa la opción --force. |
| 101 | +```shell |
| 102 | +$ gup remove --force gal |
| 103 | +removed /home/nao/.go/bin/gal |
| 104 | +``` |
| 105 | + |
| 106 | +### Verificar si el binario es la versión más reciente |
| 107 | +Si quieres saber si el binario es la versión más reciente, usa el subcomando check. El subcomando check verifica si el binario es la versión más reciente y muestra el nombre del binario que necesita ser actualizado. |
| 108 | +```shell |
| 109 | +$ gup check |
| 110 | +check binary under $GOPATH/bin or $GOBIN |
| 111 | +[ 1/33] github.com/cheat/cheat (Already up-to-date: v0.0.0-20211009161301-12ffa4cb5c87 / go1.22.4) |
| 112 | +[ 2/33] fyne.io/fyne/v2 (current: v2.1.3, latest: v2.1.4 / current: go1.20.2, installed: go1.22.4) |
| 113 | + : |
| 114 | +[33/33] github.com/nao1215/ubume (Already up-to-date: v1.5.0 / go1.22.4) |
| 115 | + |
| 116 | +If you want to update binaries, the following command. |
| 117 | + $ gup update fyne_demo gup mimixbox |
| 118 | +``` |
| 119 | + |
| 120 | +Como otros subcomandos, solo puedes verificar los binarios especificados. |
| 121 | +```shell |
| 122 | +$ gup check lazygit mimixbox |
| 123 | +check binary under $GOPATH/bin or $GOBIN |
| 124 | +[1/2] github.com/jesseduffield/lazygit (Already up-to-date: v0.32.2 / go1.22.4) |
| 125 | +[2/2] github.com/nao1215/mimixbox (current: v0.32.1, latest: v0.33.2 / go1.22.4) |
| 126 | + |
| 127 | +If you want to update binaries, the following command. |
| 128 | + $ gup update mimixbox |
| 129 | +``` |
| 130 | +### Subcomando Export/Import |
| 131 | +Usas el subcomando export/import si quieres instalar los mismos binarios de golang en múltiples sistemas. Por defecto, el subcomando export exporta el archivo a $XDG_CONFIG_HOME/gup/gup.conf. Si quieres conocer [XDG Base Directory Specification](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html), ve este enlace. Después de haber colocado gup.conf en la misma jerarquía de rutas en otro sistema, ejecutas el subcomando import. gup iniciará la instalación |
| 132 | +según el contenido de gup.conf. |
| 133 | + |
| 134 | +```shell |
| 135 | +※ Entorno A (e.g. ubuntu) |
| 136 | +$ gup export |
| 137 | +Export /home/nao/.config/gup/gup.conf |
| 138 | + |
| 139 | +※ Entorno B (e.g. debian) |
| 140 | +$ ls /home/nao/.config/gup/gup.conf |
| 141 | +/home/nao/.config/gup/gup.conf |
| 142 | +$ gup import |
| 143 | +``` |
| 144 | + |
| 145 | +Alternativamente, el subcomando export imprime información del paquete (es lo mismo que gup.conf) que quieres exportar en STDOUT si usas la opción --output. El subcomando import también puede especificar la ruta del archivo gup.conf si usas la opción --input. |
| 146 | +```shell |
| 147 | +※ Entorno A (e.g. ubuntu) |
| 148 | +$ gup export --output > gup.conf |
| 149 | + |
| 150 | +※ Entorno B (e.g. debian) |
| 151 | +$ gup import --input=gup.conf |
| 152 | +``` |
| 153 | + |
| 154 | +### Generar páginas de manual (para linux, mac) |
| 155 | +El subcomando man genera páginas de manual bajo /usr/share/man/man1. |
| 156 | +```shell |
| 157 | +$ sudo gup man |
| 158 | +Generate /usr/share/man/man1/gup-bug-report.1.gz |
| 159 | +Generate /usr/share/man/man1/gup-check.1.gz |
| 160 | +Generate /usr/share/man/man1/gup-completion.1.gz |
| 161 | +Generate /usr/share/man/man1/gup-export.1.gz |
| 162 | +Generate /usr/share/man/man1/gup-import.1.gz |
| 163 | +Generate /usr/share/man/man1/gup-list.1.gz |
| 164 | +Generate /usr/share/man/man1/gup-man.1.gz |
| 165 | +Generate /usr/share/man/man1/gup-remove.1.gz |
| 166 | +Generate /usr/share/man/man1/gup-update.1.gz |
| 167 | +Generate /usr/share/man/man1/gup-version.1.gz |
| 168 | +Generate /usr/share/man/man1/gup.1.gz |
| 169 | +``` |
| 170 | + |
| 171 | +### Generar archivo de autocompletado de shell (para bash, zsh, fish) |
| 172 | +El subcomando completion genera archivos de autocompletado de shell para bash, zsh y fish. Si el archivo de autocompletado de shell no existe en el sistema, comenzará el proceso de generación. Para activar la función de autocompletado, reinicia el shell. |
| 173 | + |
| 174 | +```shell |
| 175 | +$ gup completion |
| 176 | +create bash-completion file: /home/nao/.bash_completion |
| 177 | +create fish-completion file: /home/nao/.config/fish/completions/gup.fish |
| 178 | +create zsh-completion file: /home/nao/.zsh/completion/_gup |
| 179 | +``` |
| 180 | + |
| 181 | +### Notificación de escritorio |
| 182 | +Si usas gup con la opción --notify, el comando gup te notificará en tu escritorio si la actualización fue exitosa o no después de que termine la actualización. |
| 183 | +```shell |
| 184 | +$ gup update --notify |
| 185 | +``` |
| 186 | + |
| 187 | + |
| 188 | + |
| 189 | + |
| 190 | +## Contribuir |
| 191 | +En primer lugar, ¡gracias por tomarte el tiempo de contribuir! ❤️ Ve [CONTRIBUTING.md](../../CONTRIBUTING.md) para más información. |
| 192 | +Las contribuciones no solo están relacionadas con el desarrollo. Por ejemplo, ¡GitHub Star me motiva a desarrollar! |
| 193 | + |
| 194 | +### Historial de Estrellas |
| 195 | +[](https://star-history.com/#nao1215/gup&Date) |
| 196 | + |
| 197 | +### Para Desarrolladores |
| 198 | +Al agregar nuevas características o corregir errores, por favor escribe pruebas unitarias. sqly tiene pruebas unitarias para todos los paquetes como muestra el mapa de árbol de pruebas unitarias a continuación. |
| 199 | + |
| 200 | + |
| 201 | + |
| 202 | +## Contacto |
| 203 | +Si quieres enviar comentarios como "encontré un error" o "solicitud de características adicionales" al desarrollador, por favor usa uno de los siguientes contactos. |
| 204 | + |
| 205 | +- [GitHub Issue](https://github.com/nao1215/gup/issues) |
| 206 | + |
| 207 | +Puedes usar el subcomando bug-report para enviar un reporte de error. |
| 208 | +``` |
| 209 | +$ gup bug-report |
| 210 | +※ Open GitHub issue page by your default browser |
| 211 | +``` |
| 212 | + |
| 213 | +## LICENCIA |
| 214 | +El proyecto gup está licenciado bajo los términos de [la Licencia Apache 2.0](../../LICENSE). |
| 215 | + |
| 216 | + |
| 217 | +## Colaboradores ✨ |
| 218 | + |
| 219 | +Gracias a estas maravillosas personas ([clave de emoji](https://allcontributors.org/docs/en/emoji-key)): |
| 220 | + |
| 221 | +<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --> |
| 222 | +<!-- prettier-ignore-start --> |
| 223 | +<!-- markdownlint-disable --> |
| 224 | +<table> |
| 225 | + <tbody> |
| 226 | + <tr> |
| 227 | + <td align="center" valign="top" width="14.28%"><a href="https://debimate.jp/"><img src="https://avatars.githubusercontent.com/u/22737008?v=4?s=100" width="100px;" alt="CHIKAMATSU Naohiro"/><br /><sub><b>CHIKAMATSU Naohiro</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=nao1215" title="Code">💻</a></td> |
| 228 | + <td align="center" valign="top" width="14.28%"><a href="https://qiita.com/KEINOS"><img src="https://avatars.githubusercontent.com/u/11840938?v=4?s=100" width="100px;" alt="KEINOS"/><br /><sub><b>KEINOS</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=KEINOS" title="Code">💻</a></td> |
| 229 | + <td align="center" valign="top" width="14.28%"><a href="https://mattn.kaoriya.net/"><img src="https://avatars.githubusercontent.com/u/10111?v=4?s=100" width="100px;" alt="mattn"/><br /><sub><b>mattn</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=mattn" title="Code">💻</a></td> |
| 230 | + <td align="center" valign="top" width="14.28%"><a href="https://jlec.de/"><img src="https://avatars.githubusercontent.com/u/79732?v=4?s=100" width="100px;" alt="Justin Lecher"/><br /><sub><b>Justin Lecher</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=jlec" title="Code">💻</a></td> |
| 231 | + <td align="center" valign="top" width="14.28%"><a href="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/lincolnthalles"><img src="https://avatars.githubusercontent.com/u/7476810?v=4?s=100" width="100px;" alt="Lincoln Nogueira"/><br /><sub><b>Lincoln Nogueira</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=lincolnthalles" title="Code">💻</a></td> |
| 232 | + <td align="center" valign="top" width="14.28%"><a href="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/matsuyoshi30"><img src="https://avatars.githubusercontent.com/u/16238709?v=4?s=100" width="100px;" alt="Masaya Watanabe"/><br /><sub><b>Masaya Watanabe</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=matsuyoshi30" title="Code">💻</a></td> |
| 233 | + <td align="center" valign="top" width="14.28%"><a href="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/memreflect"><img src="https://avatars.githubusercontent.com/u/59116123?v=4?s=100" width="100px;" alt="memreflect"/><br /><sub><b>memreflect</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=memreflect" title="Code">💻</a></td> |
| 234 | + </tr> |
| 235 | + <tr> |
| 236 | + <td align="center" valign="top" width="14.28%"><a href="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/Akimon658"><img src="https://avatars.githubusercontent.com/u/81888693?v=4?s=100" width="100px;" alt="Akimo"/><br /><sub><b>Akimo</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=Akimon658" title="Code">💻</a></td> |
| 237 | + <td align="center" valign="top" width="14.28%"><a href="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/rkscv"><img src="https://avatars.githubusercontent.com/u/155284493?v=4?s=100" width="100px;" alt="rkscv"/><br /><sub><b>rkscv</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=rkscv" title="Code">💻</a></td> |
| 238 | + <td align="center" valign="top" width="14.28%"><a href="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/scop"><img src="https://avatars.githubusercontent.com/u/109152?v=4?s=100" width="100px;" alt="Ville Skyttä"/><br /><sub><b>Ville Skyttä</b></sub></a><br /><a href="https://github.com/nao1215/gup/commits?author=scop" title="Code">💻</a></td> |
| 239 | + </tr> |
| 240 | + </tbody> |
| 241 | +</table> |
| 242 | + |
| 243 | +<!-- markdownlint-restore --> |
| 244 | +<!-- prettier-ignore-end --> |
| 245 | + |
| 246 | +<!-- ALL-CONTRIBUTORS-LIST:END --> |
| 247 | + |
| 248 | +Este proyecto sigue la especificación [all-contributors](https://github.com/all-contributors/all-contributors). ¡Contribuciones de cualquier tipo son bienvenidas! |
0 commit comments