LINUX.ORG.RU

GitHub CLI 2.23.0

 , , ,

GitHub CLI 2.23.0

1

1

Обновился официальный клиент командной строки для GitHub.

Что нового:

  • repo fork: добавлен ключ --default-branch-only;
  • repo edit: выводится запрос при изменении доступности репозитория.

Исправления:

  • run: исправление ошибки целочисленного переполнения при более чем 255 попытках запуска;
  • extension browse: улучшение удобства использования;
  • исправление управляющих символов ANSII, возвращаемых с сервера;
  • другие изменения. :)

Программа написана на языке Go, исходный текст распространяется по лицензии MIT.

>>> Подробности

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 5)
Ответ на: комментарий от GREAT-DNG

Эта штука полезна в основном для управления пулл-реквестами и другими фичами гитхаба без использования его б-гомерзкого UI.

annulen ★★★★★
()
Ответ на: комментарий от GREAT-DNG

«Зачем нужны базы данных, если есть 1С»…

hobbit ★★★★★
()

Там обновления чуть не каждый день.
(2.22.0 2 недели назад вышла, не считая минорных версий).

Непонятно чего это вдруг в новости попало.

Lexa
()

Эта тупая утилита до сих пор не может нормально обрабатывать ввод с клавиатуры. Например, начнешь что-нибудь вводить, а потому нажимаешь alt-b, чтобы вернуться на слово назад, а gh просто крашится.

Программа написана на языке Go

А если бы написали на нормальном языке и использовали libreadline, то со вводом было бы всё нормально.

rupert ★★★★★
()
Ответ на: комментарий от rupert

анб уже предоставляет свои кластеры чтобы собирать проекты на нормальном языке?

Syncro ★★★★★
()

run: исправление ошибки целочисленного переполнения при более чем 255 попытках запуска;

Это что они булевый true через x++ устанавливали как в Therac-25?

fuggy
()

исправление ошибки целочисленного переполнения при более чем 255 попытках запуска

Программа написана на языке Go

Найс!

CYB3R ★★★★★
()
Ответ на: комментарий от GREAT-DNG

Хотел тут залить папку с исходниками на github (без импорта проекта, просто исходники), так сначала устаревшие неполные инструкции в интернете сношали мозг (оказалось надо вписать свои реквизиты в .gitconfig), а потом оказалось, что github с 2021 года отказался от авторизации по логину/паролю и надо плясать с какими-то токенами, о которых, конечно, в статьях не пишут. А file uploader гитхабовский принимает не больше 100 файлов за раз и каталоги не позволяет загружать.

Если офф. прога всё делает просто, то точно смысл в ней есть. Жадь x64 only.

Narosan
()
Ответ на: комментарий от Narosan

На самом GitHub предельно понятные и актуальные инструкции на такой случай. Ни к чему читать фантазии различных Васянов, считающих, что они освоили Git методом тыка.

emorozov
()

Я всегда думал, что cli для github называется git.

Тогда уж объявите, что git deprecated и используйте github cli

alt-tab-let ★★
()
Ответ на: комментарий от dataman

Не хочу превращать тред в дискуссию о Go, но просто сам Си люблю больше, чем Go, и спасибо, не знал о проекте!

GFORGX ★★★
()
Ответ на: комментарий от rupert

А в чем проблема на Go нормально сделать-то? Это не проблема языка.

И там не краш по ссылке ни разу, а выдача ошибки.

GFORGX ★★★
()
Ответ на: комментарий от CYB3R

А в чем проблема-то? Выше моим постом ссылка на коммит.

GFORGX ★★★
()

run: исправление ошибки целочисленного переполнения при более чем 255 попытках запуска;

Очень трудно запускаемая утилита =)

LINUX-ORG-RU ★★★★★
()
dron@gnu:~/Рабочий-стол/nsec.lua$ apt show gh
Package: gh
Version: 2.22.1+dfsg1-1
Static-Built-Using: go-md2man-v2 (= 2.0.2+ds1-1), gojq (= 0.12.8-1), golang-1.19 (= 1.19.5-1), golang-blackfriday-v2 (= 2.1.0-1), golang-github-alecaivazis-survey (= 2.3.6+ds1-1), golang-github-alecthomas-chroma (= 0.10.0-3), golang-github-aymanbagabas-go-osc52 (= 1.2.1-1), golang-github-aymerick-douceur (= 0.2.0-3), golang-github-briandowns-spinner (= 1.18.1+ds1-1), golang-github-cenkalti-backoff (= 4.1.3-1), golang-github-charmbracelet-glamour (= 0.5.0-2), golang-github-charmbracelet-lipgloss (= 0.5.0-1), golang-github-cli-browser (= 1.1.0-2), golang-github-cli-go-gh (= 1.0.0-1), golang-github-cli-oauth (= 1.0.0-1), golang-github-cli-safeexec (= 1.0.1-1), golang-github-cli-shurcool-graphql (= 0.0.2-1), golang-github-davecgh-go-spew (= 1.1.1-3), golang-github-dlclark-regexp2 (= 1.4.0+ds1-1), golang-github-fatih-color (= 1.7.0-1), golang-github-gabriel-vasile-mimetype (= 1.4.1+dfsg1-2), golang-github-gdamore-encoding (= 1.0.0-3), golang-github-gdamore-tcell.v2 (= 2.5.4-1), golang-github-google-shlex (= 0.0~git20191202.e7afc7f-1), golang-github-gorilla-css (= 1.0.0-3), golang-github-gorilla-websocket (= 1.5.0-2), golang-github-hashicorp-errwrap (= 1.1.0-1), golang-github-hashicorp-go-multierror (= 1.1.1-2), golang-github-hashicorp-go-version (= 1.3.0-1), golang-github-henvic-httpretty (= 0.0.6-3), golang-github-itchyny-timefmt-go (= 0.1.3-2), golang-github-joho-godotenv (= 1.4.0-1), golang-github-kballard-go-shellquote (= 0.0~git20180428.95032a8-2), golang-github-lucasb-eyer-go-colorful (= 1.2.0-1), golang-github-makenowjust-heredoc (= 1.0.0-1), golang-github-mattn-go-colorable (= 0.1.13-1), golang-github-mattn-go-isatty (= 0.0.17-1), golang-github-mattn-go-runewidth (= 0.0.14-1), golang-github-mgutz-ansi (= 0.0~git20200706.d51e80e-1), golang-github-microcosm-cc-bluemonday (= 1.0.20-1), golang-github-muesli-reflow (= 0.3.0-2), golang-github-muesli-termenv (= 0.13.0-2), golang-github-muhammadmuzzammil1998-jsonc (= 0.0~git20201229.615b091-2), golang-github-olekukonko-tablewriter (= 0.0.5-2), golang-github-opentracing-opentracing-go (= 1.2.0-2), golang-github-pmezard-go-difflib (= 1.0.0-3), golang-github-rivo-tview (= 0.0~git20221029.c4a7e50-1), golang-github-rivo-uniseg (= 0.4.2-1), golang-github-shurcool-githubv4 (= 0.0~git20220520.0b4e329-1), golang-github-shurcool-graphql (= 0.0~git20220606.3cf50f8-1), golang-github-sourcegraph-jsonrpc2 (= 0.1.0-3), golang-github-spf13-cobra (= 1.6.1-1), golang-github-spf13-pflag (= 1.0.6~git20210604-d5e0c0615ace-1), golang-github-thlib-go-timezone-local (= 0.0~git20210907.ef149e4-5), golang-github-yuin-goldmark (= 1.5.3-1), golang-github-yuin-goldmark-emoji (= 1.0.1-2), golang-golang-x-net (= 1:0.4.0+dfsg-1), golang-golang-x-sync (= 0.1.0-1), golang-golang-x-sys (= 0.3.0-1), golang-golang-x-term (= 0.3.0-1), golang-golang-x-text (= 0.5.0-1), golang-google-genproto (= 0.0~git20200413.b5235f6-3), golang-google-protobuf (= 1.28.1-2), golang-gopkg-yaml.v3 (= 3.0.1-3), golang-objx (= 0.5.0-1), golang-testify (= 1.8.1-1)
Priority: optional
Section: utils
Maintainer: Debian Go Packaging Team <team+pkg-go@tracker.debian.org>
Installed-Size: 40,3 MB
Depends: libc6 (>= 2.34)
Conflicts: gitsome (<< 0.8.0+ds-7.1)
Homepage: https://cli.github.com/
...

Спосибо нинада. Разве что будет ооооооочень надо, тогда да, а так нет.

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от token_polyak

В ортодоксальной голанг секте поклонения монолиту затесался диверсант. Или лоланг секта приехав в пристанище debian коммуны «разделяй и устанавливай» не поняла что debian клерики тетраграматона превратят их благодать монолитную в снизвергнутую идилму конструктора лего ради эквилибриума над пропастью «отвалится пакет, отвалится всё» материальную версию объекта поклонения глаговитян. Те конечно в шоке, мы тоже. Вывод. Разбивать программу на модули хорошо, но упарываться надо до некого предела.

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU
Depends: libc6 (>= 2.34)
Installed-Size: 40,3 MB 

А что не так? ну а это, что в Static-Built-Using куча пакетов, так это типично для любой гошной софтины, тебе же их ставить не придется

user_undefined
()
Ответ на: комментарий от LINUX-ORG-RU

Так нужно правильные дистрибутивы использовать! ;)

Package: gh
Version: 2.22.1+dfsg1-1
Priority: optional
Section: utils
Maintainer: Debian Go Packaging Team <team+pkg-go@tracker.debian.org>
Installed-Size: 40.3 MB
Depends: libc6 (>= 2.34)
Conflicts: gitsome (<< 0.8.0+ds-7.1)
Homepage: https://cli.github.com/
Download-Size: 7,244 kB
APT-Sources: https://pkgmaster.devuan.org/merged ceres/main amd64 Packages
dataman ★★★★★
() автор топика
Ответ на: комментарий от user_undefined

Да, но всё равно выглядит страшно, для утилки дрыгающей json с сайта. Ладно, я просто докапываюсь, это M$ грех не докопаться.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от GFORGX

Скажи спасибо своим мейнтейнерам.

Честь им и хвала.

Скачай с гита и сделай go build.

Зачем? Мейнтейнеры уже разгребли goвно за него, см. предыдущее предложение.

token_polyak ★★★★★
()
Последнее исправление: token_polyak (всего исправлений: 1)
Ответ на: комментарий от LINUX-ORG-RU

Тем временем в далёкой gentoo https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-util/github-cli/github-cli-2.21.2.ebuild

Но всё это он всё равно скачает в том или ином виде. Только не помню, он в итоге в один архив всё пихает при скачивании или нет.

grem ★★★★★
()
Ответ на: комментарий от token_polyak

Хорошо разгребли, прямо заметно.

Впрочем, с противниками хорошего языка, наследующего лучшие вещи в Сях, мне не о чем спорить.

GFORGX ★★★
()
Ответ на: комментарий от token_polyak

В Go есть концептуально нерешенная проблема с вендорингом, но имхо для такой мелкой утилиты статик - это ок.

GFORGX ★★★
()
Ответ на: комментарий от GFORGX

Речь там, написано тут. Я читал что тут. Это юмор. Досвиданья :D Не душни

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от GFORGX

Да никто не говорит что язык плохой. Но у него есть родовые травмы, которые не все могут принять как есть =) Ну и шуточки, как без них. Половина популярности го, хихи-хаха контент по поводу него. Так же у других. Без хейта или глубмления любой язык подохнет в тлеющем прахе времени.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от LINUX-ORG-RU

Это да, выглядит страшно. Я посмотрел невнимательно сначала и подумал, что это как раз зависимости, ну и полез смотреть как в дебе умудрились такое сделать )

user_undefined
()
Ответ на: комментарий от anonymous_sapiens

иначе говоря, не осилил

Не хочу быть рабом корпораций, которые форсят фичи, которые как с медленно варящейся лягушкой превратится в концлагерь.

Skullnet ★★★★★
()
Ответ на: комментарий от annulen

без использования его б-гомерзкого UI.

А что в интерфейсе GitHub’а есть б-гомерзкого? И вообще есть что-то лучше интерфейса GitHub’а для Git-репозиториев?

EXL ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

«Легендарное качество дебиановских пакетов»™.

На всякий случай уточню: --no-install-recommends по умолчанию активно?

AlexM ★★★★★
()
Ответ на: комментарий от EXL

На вкус все фломастеры разные. Но неплохим интерфейсом к гитовому репозиторию полагаю файловую систему, родные git-овые утилиты и разнообразные обертки над ними типа git-series.

Впрочем, конечно, github.dev восхитил.

AlexM ★★★★★
()
Ответ на: комментарий от AlexM

Сама утилита собрана статически =) Ничего из этого не притянется, лишь один бинарник на 40+ метров, но каждый из этих пакетов есть в репе по отдельности. Просто с толку сбивает список этот людей, так как почти везде кроме го, простыня означает что всё это будет устанавливается и Static-Built-Using: строяка с глаз теряется, на автомате (и я тоже) воспринимается как Depends:, а оно ниже, но уже поздноб шок 😱 испытан =)

–no-install-recommends по умолчанию активно?

Ага

dron@gnu:~$ apt-config dump | grep Recommends
APT::Install-Recommends "true";
dron@gnu:~$ 
LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от anonymous_sapiens

Поясни, плз, чем плоха именно эта фича? Или ты про то, что тебя лишили возможности подключаться по логину/паролю?

Именно так, и зафорсили обязательные токены, которые невозможно запомнить - нужно включать запоминание, а они ещё и истекают. Да и выглядит это как полумера, потому что лучше тогда делать аутенификацию как через ssh сертификаты.

Skullnet ★★★★★
()
Последнее исправление: Skullnet (всего исправлений: 1)
Ответ на: комментарий от rupert

Да ладно. Тот же Openvpn если убить, тоже ломает консоль. Всё это отстой программный.

thegoldone ★★
()
Ответ на: комментарий от AlexM

Но неплохим интерфейсом к гитовому репозиторию полагаю файловую систему, родные git-овые утилиты и разнообразные обертки над ними типа git-series.

Так речь не об этом же.
Тут именно cli к гитхабовским фичам - PR, Issues, Actions, Codespaces, etc.
Глянуть список открытых пулл-реквестов и переключиться на нужный, например.
Без этой штуки приходилось открывать браузер и смотреть какая там бранча у нужного PR.
Может это как-то еще можно, например у vscode есть тоже интеграция с гитхабом.
Но чтобы именно из cli - я чёт других вариантов не знаю.

Lexa
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.