LINUX.ORG.RU

Git, Windows и .Net

 , , , ,


0

1

Привет, ЛОР.

Как многие уже знают, недавно Github убрал возможность git push по имени и паролю, теперь для этого нужно генерировать специальный токен. И везде таскать его с собой, поскольку запомнить этот длинный sequence простому смертному крайне проблематично, поэтому если на безопасность доступа к гитхабу это и повлияло, то скорее, отрицательно. Ну да ладно.

У меня основных устройств, с которых я работаю с гитхабом, четыре: два с линуксом, одно с Windows 8.1 и одно с macOS. С линуксами всё в целом прошло гладко, теперь я этот токен ввожу вместо пароля.

В Windows этот механизм работать отказался. Я обновил git до 2.34.1. Теперь:

  • обновлённый git тянет за собой Git Credential Manager, написанный на .Net. Что очень заметно как при установке программы (винду пришлось обновлять, а обновление винды — это вам не обновление линукса), так и при запуске;

  • при попытке сделать git push консольная программа git показывает окно браузера!

После этого git push, наконец, сработал.

И что бы там не говорили фанаты сишарпа и др., .Net очень заметен: программа стала гораздо более «задумчивой».

На очереди макось. Там тоже, видимо, придётся обновлять git. Сейчас вот думаю, не потащит ли она за собой половину xcode…

P.S. Ряд комментаторов настойчиво предложил переходить на SSH. Я последовал их совету на macOS. Работает. Вероятно, и на остальных ОС перейду на этот способ.

Тему можно считать решённой.

★★★★★

Последнее исправление: hobbit (всего исправлений: 3)

vscode на linux тоже открывает окно браузера при push на github

Ford_Focus ★★★★★
()

Любой софт на .net тормозной и задумчивый, возможно даже еще хуже по сравнению с gui на java. Ему для запуска нужно прочитать что-то около полу гигабайта бинарных данных и засорить ОЗУ этими данными из net global assembly cache что лежит в каталоге с вендой.

В венде 11 сейчас даже и проводник начал тупить по сравнению с 10. Быстрый десктопный GUI на венде больше мелкософт не интерисует. У них в голове другие штуки типа EdgeWebView2, UWP, WinUI2/3, MAUI. Все эти технологии не про скорость работы релизных сборок, а про то, как запихать туда больше и больше телеметрии.

Написали бы лучше на Qt.

bhfq ★★★★★
()
Последнее исправление: bhfq (всего исправлений: 1)

.Net очень заметен: программа стала гораздо более «задумчивой».

Ты же вроде недавно компьютер обновлял, если я не путаю. Всё равно всё «задумчиво» работает?

fsb4000 ★★★★★
()

Можно же использовать ключ ssh.

einhander ★★★★★
()

Сделайте новый SSH ключ на компьютере (ключей можно сделать несколько для одного аккаунта) и зарегистрируйте его на сайте GitHub. Ничего вводить кроме логина сайта GitHub для этого не требуется.

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

Ты же вроде недавно компьютер обновлял, если я не путаю.

Не путаешь. Но речь про винду, а винда на ноутбуке.
На домашнем компе линукс, и там всё по-старому (ну кроме того, что кроме пароля ввожу этот самый токен).

hobbit ★★★★★
() автор топика
Последнее исправление: hobbit (всего исправлений: 2)
Ответ на: комментарий от X512

SSH … ключей можно сделать несколько для одного аккаунта

Вот это интересная мысль. Возможно, попробую.

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

Быстрый десктопный GUI на венде больше мелкософт не интерисует.

Мелкософт ладно. Меня больше волнует, не потащат ли впоследствии разработчики гита эти куски дотнета ещё и в линуксовую сборку…

hobbit ★★★★★
() автор топика

На очереди макось. Там тоже, видимо, придётся обновлять git. Сейчас вот думаю, не потащит ли она за собой половину xcode…

git 2.34.1 из homebrew, УМВР. А все эти credential manager’ы настраиваются в gitconfig, странно видеть подобные жалобы от программера

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

Время, к сожалению, необратимо, и программер с гораздо большей охотой потратил бы его на прикручивание новой фичи к собственно программе :)

hobbit ★★★★★
() автор топика

Ну тут уже советовали, ssh ключ реально удобная штука, по желанию можно вообще забыть про пароли. Можно один ключ настроить на всех устройствах, можно разные сгенерить, полная свобода и удобство на всех системах :)

Единственное, я не очень помню, но может понадобиться иметь ориджин линк в ssh формате, а не https, ну да это при первом пуше сматерится если что.

git remote set-url origin new.git.url/here

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

В линуксе есть куча бекендов типа там kwallet (очень глючное гуано), что-то там у гномоящеров тоже.

Я пользуюсь SmartGit, не понимаю даже зачем нужно лезть в терминал (только если уж совсем что-то напартачил).

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

Ты же наверное не руками каждый раз пароль вводишь? Тебе его на компе хранить приходится, так вот хранить ключи секъюрнее чем пароли. Их может быть много и с разным доступом.

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

Торвальдс может и нет, а вот в то, что в каком-нибудь RedHat могут вкорячить этот credential manager по умолчанию, я охотно верю

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

Вот если прям под SSL понимать только SSL, а не TLS, то таки да, несекурно.

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

В венде 11 сейчас даже и проводник начал тупить по сравнению с 10

Впечатления противоположные. 11 просто реактивная. Есть у нее гуй- недостатки, но скорость интерфейса к ним не относится. Такое возможно в самом начале, сразу после установки, когда еще не обновился и соответственно винда не подтянула необходимые дрова из «необязательных обнов».

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

Как посмотреть. С одной стороны лучше не имеем, с другой стороны, было бы оно так я б на работу не ходил.

Но это никак не относится к необъяснимому желанию работать с гитхабом не по ключу.

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

к необъяснимому желанию

До недавнего времени «необъяснимое» объяснялось очень просто — возможностью не таскать с собой на новое устройство ничего, что нельзя скачать из интернета — достаточно иметь в голове логин и пароль.

Сейчас вот времена поменялись. Но @X512 выше подсказал, что можно генерировать разные ключи для разных устройств. Значит, жить можно.

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

Я так вот именно вводил руками. Меня не ломало.

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

Мне почему-то казалось что возможность нескольких ключей SSH – это основа основ, а оказывается пятизвёздочные модераторы про это не знают. Сейчас же всё взаимодействие с серверами через SSH происходит.

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

Тем более непонятно.

  1. Если пользоваться паролями, то тогда целый парольный менеджер таскать надо, что чуть ли не ещё более напряжно.

  2. Как ты по SSH ходил с устройства на устройство, тоже по паролю?

t184256 ★★★★★
()

И что бы там не говорили фанаты сишарпа и др., .Net очень заметен: программа стала гораздо более «задумчивой».

Прямо гораздо? А вы про какой из GCM?

З.Ы.: никогда винда не подходила для разработки, и вот опять.

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

В гите уже есть встроенные хелперы, GCM же опционален.

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

Называется как-то credentials helper, уже не вспомню, у гита есть встроенная поддержка винкреда на винде, но если нужно что-то больше (типа того же токена), приходится использовать хелпер.

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

Кстати где вы там нашли .Net? Ни разу ни браузера, ни .Net в Git не видел.

При git push или git clone и т.д. такое окошко появляется:

https://www.jonathanmedd.net/wp-content/uploads/2021/02/image-1.png

Токены обычно перегенерировать нужно раз в 1-3 месяца. Так что периодически такое окошко тоже вижу…

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

Зачем это нужно когда есть ключи SSH? Браузеры в Git – дикость какая-то.

вот тут генерируются:

https://github.com/settings/tokens

Там права можно давать токенам. Я создал только с одним разрешенным действием на push. И таким токеном пользуюсь. В январе нужно будет перегенерировать.

Я не знаю, в целом ssh ключи тоже норм. На github я пользуюсь токенами, а на работе внутренний gitlab и там ssh ключ…

fsb4000 ★★★★★
()

Git, Windows и .Net

Значит, когда я спрашивал про wsl2 - сняли скор и потёрли с криками «на Winfaq», а тут, раз модератор, то «это другое»?

Что за двойные стандарты?

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

Да, виндопроблемы и есть, я же написал, что в линуксах всё (пока?) и так работает.

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

Значит, когда я спрашивал про wsl2

Смотря как спрашивал. По тегам wsl и wsl2 на ЛОРе вполне себе находятся и вопросы, и ответы на них. Если же человек начинает быковать в стиле «решил я тут поставить этот ваш линукс на нормальную операционную систему» — понятное дело, это под снос. Что было в твоём случае, я не знаю.

Ну и если я правильно понял, чей ты виртуал, приглашаю вернуться на форум, на мой личный взгляд, в том разговоре вы были оба в чём-то неправы. Могу восстановить аккаунт и сбросить пароль, если почта живая и есть желание продолжить общение.

раз модератор, то «это другое»

«Не надо искать тайную ложу там, где присутствует явная лажа» (по Пелевину).

Я собирался на самом деле написать Disclaimer из четырёх пунктов, при чём тут линукс. Зря не написал, наверное.

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

воспоминание о будущем линукса

Да-да, это один из четырёх пунктов, я бы даже написал «опасение».

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

При установке же выбирается хелпер.

Вот тут поподробнее, пожалуйста. По-моему, мне безальтернативно предложили установить .Net для этого самого Credential Manager… но может я где-то что-то всё же недонажал?

P.S. Старый виндовый git 2.16 после изменений на гитхабе просто не принимал ввод токена вместо пароля, аутентификация не срабатывала.

hobbit ★★★★★
() автор топика
Последнее исправление: hobbit (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.