Профиль: Аноним (вход | регистрация) неRU opennet.me  
The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск Git 2.55 c включением по умолчанию поддержки Rust

30.06.2026 11:15 (MSK)

Представлен релиз распределенной системы управления исходными текстами Git 2.55. Среди ключевых изменений: включение по умолчанию сборки с Rust, реализация для Linux процесса fsmonitor, новая стратегия переупаковки инкрементального MIDX-индекса, команда "git history fixup" для исправления коммита, оптимизация генерации битовых карт доступности объектов, поддержка параллельного выполнения hook-ов, команда "git format-rev". Код Git распространяется под лицензией GPLv2+.

По сравнению с прошлым выпуском в новую версию принято 505 изменений, подготовленных при участии 100 разработчиков, 33 из которых впервые приняли участие в разработке Git. Основные новшества (1, 2, 3):

  • По умолчанию включена поддержка компонентов на языке Rust. Компилятор rustc добавлен в число сборочных зависимостей. Для сборки без Rust можно использовать флаг "NO_RUST=1" при запуске утилиты make или "-Drust=disabled" при выполнении "meson configure". Возможность отключения сборки с Rust будет поддерживаться до ветки Git 3.0, в которой Rust будет включён в число обязательных зависимостей. На языке Rust реализована прослойка для переносимости между конфигурациями с хэшами SHA-1 и SHA-256, а также некоторые внутренние функции, такие как кодирование и декодирование целочисленных значений переменной длины. В будущем ожидается переработка на Rust более значительных внутренних компонентов Git.
  • В экспериментальную команду "git history", предоставляющую возможности для перезаписи истории изменений, добавлена операция "git history fixup" для исправления коммита. Операция "fixup" позволяет перенести изменения, добавленные через "git add", в более ранний коммит и автоматически переписать все последующие коммиты по аналогии с выполнением команды "git commit --fixup=<commit>" и запуска "git rebase --autosquash <commit>~".
  • Для платформы Linux реализован фоновый процесс fsmonitor, отслеживающий изменения в файловой системе при помощи механизма inotify и позволяющий обойтись без перебора всего рабочего каталога при выполнении таких команд, как "git status" Включение осуществляется через настройку "core.fsmonitor".
  • В команду "git repack" добавлен режим "--write-midx=incremental", реализующий новую стратегию обновления метаданных в инкрементальном MIDX-индексе (multi-pack index), позволяющую обойтись без переупаковки всего индекса. В инкрементальном многопакетном индексе вместо одного большого индекса, содержащего информацию о распределении объектов по pack-файлам, применяется разделение на слои - каждый слой охватывает определённое число pack-файлов и хранится в отдельном bitmap-файле. Подобная структура позволяет добавлять в индекс данные об объектах в новых pack-файлах, прикрепляя к индексу новые слои без перестроения уже имеющихся слоёв.

    Команда "git repack --write-midx=incremental" позволяет добавить в инкрементальный MIDX-индекс новый слой, охватывающий недавно созданные pack-файлы. В сочетании с режимом упаковки репозиториев "--geometric" новая команда даёт возможность объединить новые объекты из нескольких pack-файлов в один более крупный pack-файл и при необходимости осуществить упаковку и слияние нескольких соседних слоёв инкрементального MIDX-индекса. Подобная стратегия позволяет при выполнении "git repack" переписывать только верхние слои, оставляя старые большие слои нетронутыми, а также исключить неконтролируемое разрастание цепочки слоёв, поддерживая общее число слоёв на уровне, пропорциональном логарифму от общего числа объектов.

  • Значительно оптимизирована генерация битовых карт доступности объектов за счёт нового алгоритма обхода дерева объектов, исключающего лишнюю рекурсию, кэширования позиций объектов, сортировки битовых карт до их объединения операцией XOR и переработки кода для создания битовых карт псевдослияния (pseudo-merge). В тестовом репозитории оптимизации позволили сократить время генерации битовых карт с 612 до 294 секунд.
  • Реализована возможность параллельного выполнения независимых hook-ов в файлах конфигурации. Параллельно не могут запускаться hook-и, влияющие на совместное состояние или учитывающие его, например, меняющие примечания к коммитам или инспектирующие индексы и рабочее дерево. При этом можно параллельно запускать hook-и для проверки линтером и выполнения unit-тестирования. Допускающие параллельное выполнение hook-и настраиваются через параметр "hook.имя_хука.parallel = true". Число одновременно запускаемых работ определяется через настройку hook.jobs, hook.<event>.jobs или опцию командной строки "-j".
  • В команде "git pack-objects --path-walk" реализована возможность указания фильтров, таких как "blob:none", "blob:limit=<n>", "tree:0", "object:type=<type>", "sparse:<oid>" и "combine:". В проведённом тесте отбрасывание блобов при выполнении "--path-walk" позволило на 16% сократить размер сформированного pack-файла.
  • Добавлена команда "git format-rev" для форматирования ревизий и имён объектов, упоминаемых в списках коммитов или встречающихся в произвольном тексте (например, можно использовать в хукак для обработки примечаний к коммитам).
    
       git last-modified | git format-rev --stdin-mode=text --format=%an
     
       Junio C Hamano	builtin/commit.c 
    
  • Включено по умолчанию экранирование большинства последовательностей управления терминалом в информационных сообщениях и тексте ошибок, передаваемых сервером. При обращении к вредоносному серверу подобные escape-последовательности могли использоваться для скрытия или модификации вывода, например, через escape-последовательности для перемещения курсора и очистки текста. Оставлена поддержка escape-последовательностей для выделения элементов цветом.
  • Команда "git checkout -m теперь автоматически сохраняет конфликтующие локальные изменения в stash-области без необходимости незамедлительно разрешать конфликт.
  • В команду "git push" добавлена возможность помещения ветки на несколько внешних Git-серверов одной командой. Например, для передачи ветки main не только на основной сервер, но и на зеркала можно создать группу "publish" из серверов "github", "gitlab" и "mirror":
    
       git config remotes.publish "github gitlab mirror" 
       git push publish main
    
  • В команду "git log --graph" добавлена опция "--graph-lane-limit=<N>" для ограничения числа вертикальных полос при визуализации веток, что позволяет оставить место на экране под данные о коммитах в репозиториях с большим числом веток.
    
    ...
    * | | | |   619931f561 Merge branch 'dl/posix-unused-warning-clang'
    |\ \ \ \ \
    | * | | | ~ cf48887610 compat/posix.h: simplify GIT_GNUC_PREREQ() comparison
    | * | | | ~ ffd45926dc compat/posix.h: clean up GIT_GNUC_PREREQ() and UNUSED
    |\ \ \ \ \~
    | * | | | ~ 3f5203eeb4 ls-files: filter pathspec before lstat
    
  • В команды "git log" и "git rev-list" добавлена опция "--max-count-oldest=<N>, позволяющая выбрать N самых старых коммитов в диапазоне.


  1. Главная ссылка к новости (https://github.blog/open-sourc...)
  2. OpenNews: Выпуск системы управления исходными текстами Git 2.54
  3. OpenNews: Выпуск системы управления исходными текстами Git 2.53
  4. OpenNews: В Git 3.0 предложено сделать Rust обязательной частью сборочной инфраструктуры
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65808-git
Ключевые слова: git, rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (103) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Yowayowa Sensei (?), 11:50, 30/06/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +20 +/
    Когда у меня интересуются, что я считаю оверинжинирингом, я не задумываясь отвечаю, что это git
     
     
  • 2.4, Аноним (4), 11:54, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А как-же linux kernel?
     
     
  • 3.7, Yowayowa Sensei (?), 11:56, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Так одно создавалось для другого. Неудивительно почему получился паршивый продукт. Не говоря о том, что абсолютное большинство коммерческих и любительских проектов используют централизованную модель разработки (через github, gitLab или bitbucket).

    Многие распределенные возможности git остаются невостребованными, но разработчики все равно вынуждены нести накладные расходы на их понимание и обслуживание (например, разбираться с разницей между git fetch и git pull, настраивать upstream-ветки).

     
     
  • 4.9, Аноним (9), 12:03, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > разбираться с разницей между git fetch и git pull

    Ну, пользователей же вынуждают разбираться с разницей между скачиванием документа/программы/песенки и их открытием/запуском/прослушиванием. Так в чём проблема увидеть разницу между git fetch и git pull? Не говоря уж о том, что git pull вообще не особо нужная команда, я вообще ей пользовался десяток раз, чтобы подтянуть изменения чужих репозиториев и пересобрать исходник. Для своих репозиториев удобнее git fetch+git merge.

     
     
  • 5.14, одвто7 (?), 12:23, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +8 +/
    Глупости, pul как раз одна из популярных команд!
    git pull
    git add .
    git commit -m "..."
    git push
    Это покрывает 90% работы с гитом, всё остальное это уже рукоблудие 😁
     
     
  • 6.22, Аноним (22), 12:47, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А весь этот винегрет можно было заменить какой-нибудь одной git sync "superhotfix 128"
     
     
  • 7.24, Аноним (24), 12:51, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +5 +/
    открой для себя магию алиасов :)
     
  • 6.119, Аноним (9), 18:14, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если у вас в репозитории только одна ветка и вы не отличаете fast-forward от merge, то можно и так. А можно вообще просто паковать исходник в архивы с именами типа app-3.4.23.rar, для вашего юзкейса будет ещё проще.
     
  • 4.43, Аноним (43), 13:55, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > получился паршивый продукт

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

     
     
  • 5.95, zionist (ok), 16:20, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это просто мода и влияние авторитета. Если бы автором был не Торвальдс и если бы он продолжал ровно сидеть на BitKeeper, ничего подобного и близко не было бы.
     
     
  • 6.107, Аноним (107), 17:35, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Если бы автор BitKeeper не был большим чудаком на букву М, никакого гита бы не было. Как и меркуриала.

    Иронии добавляет тот факт, что после открытия кода исходники BitKeeper лежат на гитхабе.

     
  • 6.110, Аноним (110), 17:50, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Совсем нет. Это результат того, что разработчик взял систему контроля версий, поработал в ней, понял чего не хватает и сделал свою, для себя. Но так как это был разработчик, то сделал он то что нужно, а не то, что решили менеджеры.
     
  • 2.8, Аноним (8), 12:02, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Когда у меня интересуются, что я считаю оверинжинирингом, я не задумываясь отвечаю, что это git

    Программы можно разделить на те которые оверинжиниринг, и те которые нафиг никому не нужны.

    Как показывает практика мир вокруг - весьма сложная штука, поэтому софт тоже становится сложным.
    А всякие suckless поделки на практике могут только suck ¯\_(ツ)_/¯.

     
     
  • 3.11, Yowayowa Sensei (?), 12:05, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > софт тоже становится сложным

    Только по той причине, что срыночек порешал, а не здравый смысл

     
     
  • 4.16, Аноним (16), 12:24, 30/06/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 4.21, aname (ok), 12:43, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ещё один воен против рыночка.

    Да, в принципе, только благодаря ему что- то кроме … существует.

     
  • 4.76, Аноним (76), 15:08, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Только по той причине, что срыночек порешал, а не здравый смысл

    Очень глупо думать что рынок, особенно свободного софта, где не так силён маркетинг, делает прямо неэффективные вещи.

     
  • 3.20, aname (ok), 12:41, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Программы можно разделить на те которые оверинжиниринг,
    > и те которые нафиг никому не нужны.

    Ох уж эти ложные дихотомии


    > мир вокруг - весьма сложная штука, поэтому софт тоже становится сложным.

    Не поэтому.


    > А всякие suckless поделки на практике могут только suck

    Против KISS воюем?

     
     
  • 4.25, Аноним (25), 12:52, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Ох уж эти ложные дихотомии

    Ложность не доказывается твоим комментарием)

    >> мир вокруг - весьма сложная штука, поэтому софт тоже становится сложным.
    > Не поэтому.

    Поэтому. Сложные предметные области порождают сложный софт.
    Так как гит делался как децентрализованная штука - то сработала теорема Брюера.
    Поэтому он получился сложный.

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

    >> А всякие suckless поделки на практике могут только suck
    > Против KISS воюем?

    А что против нее воевать? Принцип классный на бумаге, а в реальности получается то что получается)
    На UNIX-way тоже поколения какеров наяривали, и где теперь UNIX со своим way?

     
     
  • 5.39, e (??), 13:43, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > и где теперь UNIX со своим way?

    Примерно везде? Начиная с Intel ME до автомобилей, самолётов, ракет, мед. оборудования, суперкомпьютеров и тд

     
     
  • 6.48, Аноним (-), 14:07, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Э?
    Ты уверен что в Intel ME, самолётах, ракетах внутри зоопарк "мелких программ которые через текстовые потоки обмениваются информацией" ?

    Софт для самолетов я не писал.
    А вот в медицинский заглядывал.
    И там никакого unixway не было.

     
  • 2.12, q (ok), 12:07, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Напоминаю, что ты не обязан пользоваться ВООБЩЕ ВСЕМ функционалом гита. Оверинжиниринг -- это когда что-то сделали, а оно могло быть проще. Так вот: приведи конкретный пункт, в котором что-то в гите могло быть проще. Хотя бы один пункт. Вот прям ща. Ты же отвечаешь за свои слова, верно? Или просто газифицируешь лужу? Один пункт. Не два, не три, а всего один.
     
     
  • 3.17, e (??), 12:33, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Оверинжиниринг -- это когда что-то сделали, а оно могло быть проще.

    Не только. Из Cambridge Dictionary:

    over-engineer --- to create, design, or build something to be more complicated or perform more actions than is necessary or helpful.

    Вторая часть как раз к гиту и подходит

     
     
  • 4.18, q (ok), 12:35, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Вторая часть как раз к гиту и подходит

    Отлично! А теперь ты берешь - и приводишь функционал в гите, которым вообще никто не пользуется: ни пользователи, ни другие системы вроде cgit, GitLab etc. Давай. Прям ща. Хоп! - и приводишь ОДНУ такую вещь.

     
     
  • 5.36, e (??), 13:26, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > приводишь функционал в гите, которым вообще никто не пользуется

    Такого функционала просто не может быть, гит слишком распространен, добавь туда хоть аудиоплеер, им хоть кто-то да будет пользоваться.

    > ни другие системы вроде cgit, GitLab etc

    Так в этом и проблема, по видимому. Git превращается (или уже превратился) из простой СКВ, в некий "бэкенд" для крупных сервисов, судя по последним чейнджлогам. И вариант "просто не пользоваться" избыточным функционалом не прокатывает. На все эти лишние команды приходится обращать внимание, просто потому что они есть, ну, ты же как бы инструмент изучаешь, его желательно "полностью" освоить. И выходит, что для изучения простого доп. инструмента, который вроде работу облегчать должен, нужно времени больше, чем для изучения какого-нибудь ЯП.

     
     
  • 6.40, q (ok), 13:44, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > добавь туда хоть аудиоплеер, им хоть кто-то да будет пользоваться

    Функционал аудио-плеера не принадлежит домену управления ревизиями дерева исходников. Приведи функционал, который удовлетворяет следующим критериям:

    относится_к_теме_гита && (могло_быть_проще || никто_не_пользуется)

    > Git превращается (или уже превратился) из простой СКВ, в некий "бэкенд" для крупных сервисов

    Всегда был таким, доброе утро. Хочешь попроще? Пользуйся "Новой папкой (42)" и "Отчет-финальный-финальный-точно-финальный-5-после-правок-8.docx".

    > вариант "просто не пользоваться" избыточным функционалом не прокатывает

    Прокатывает. Я ими не пользуюсь.

    > На все эти лишние команды приходится обращать внимание

    Не приходится. О существовании большинства из них я даже не в курсе.

    > ты же как бы инструмент изучаешь, его желательно "полностью" освоить

    Нет. Инструмент осваиваешь ровно настолько, насколько лично тебе нужно. Скажем, ты даже свой телевизор освоил лишь на 10% - и все равно успешно пользуешься им годами. А вот ты попробуй потыкать по менюхам и на все кнопки пульта -- откроешь для себя редчайшие 90% функционала.

    > нужно времени больше, чем для изучения какого-нибудь ЯП

    А ЯП ты как изучаешь? По учебникам, в которых объясняется только то, что нужно тебе? Или читаешь стандарт от корки до корки, включая BNF синтаксиса? Вот то-то же и оно. Ты и ЯП не "полностью" осваиваешь.

     
     
  • 7.44, Аноним (110), 13:56, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Скажем, ты даже свой телевизор освоил лишь на 10% - и все равно успешно пользуешься им годами. А вот ты попробуй потыкать по менюхам и на все кнопки пульта -- откроешь для себя редчайшие 90% функционала.

    Время зря потратишь.

    Как вариант:
    Запись фильмов есть, хотя и не всех - но не нужно.
    Записи футбола нет, хотя и нужно.

    В итоге он нужен только...

    А зачем он нужен?

     
  • 7.45, e (??), 13:56, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >  Или читаешь стандарт от корки до корки, включая BNF синтаксиса?

    Ты не поверишь

     
  • 7.47, Аноним (47), 14:02, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Хочешь попроще? Пользуйся "Новой папкой (42)" и "Отчет-финальный-финальный-точно-финальный-5-после-правок-8.docx".

    версионировать код это полный бред, спеку версионируют и все в одном файле, а чтобы 1500 ревизий не плодить, все изначально хорошо продумывают, дальше фиксируют и пишут по зафиксированной спеке код.

     
     
  • 8.50, Аноним (-), 14:12, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    а потом садятся на невидимого розового единорога и улетают в волшебную страну с ... текст свёрнут, показать
     
     
  • 9.59, Аноним (47), 14:28, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    давай стихами да ради бога, хоть 100 раз, пока не зафиксировали спеку, или у вас... текст свёрнут, показать
     
  • 7.49, e (??), 14:10, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Странная аналогия, телевизор это не рабочий инструмент. Скажем, на сколько процентов функционала МФД осваивают пилоты истребителей? Много там фич, которым они не пользуются и которые усложняют при этом систему? Аналогия тоже так себе, но раз уж мы до них скатились
     
     
  • 8.51, q (ok), 14:18, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не поверю, что освоение стандарта си занимает меньше времени, чем наипростейшего... текст свёрнут, показать
     
     
  • 9.60, e (??), 14:32, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Как скажешь ... текст свёрнут, показать
     
  • 9.61, Аноним (47), 14:34, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    у нынешних макита шуруповертов есть всякие беспроводные интерфейсы управления б... текст свёрнут, показать
     
     
  • 10.68, Аноним (68), 14:47, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    О ужас А чтобы починить машину сложнее жигулятора нужно иметь как минимум ELM32... большой текст свёрнут, показать
     
  • 10.69, q (ok), 14:48, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    У тебя нет экспертизы ни в авиации, ни, как видим, в гите, ибо ты до сих пор не ... текст свёрнут, показать
     
     
  • 11.77, e (??), 15:09, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Не дам ... текст свёрнут, показать
     
     
  • 12.88, q (ok), 15:40, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Что и требовалось доказать только и умеешь, что газифицировать лужу ыкспердным ... текст свёрнут, показать
     
  • 11.80, Аноним (47), 15:13, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Давай покажи ее какой наивный вывод, аналогия это не то же самое , это походу ... текст свёрнут, показать
     
     
  • 12.87, q (ok), 15:38, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ты мне приведи не просто пример оверинжинеринга , а пример оверинжинеринга ГИТ... текст свёрнут, показать
     
     
  • 13.104, Аноним (47), 17:19, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Придумай глупость, да д рак ее совершающий всегда найдется Я вам не запрещаю ис... текст свёрнут, показать
     
     
  • 14.109, Аноним (110), 17:43, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вот А так интересно начинал Думал, может, умный человек с оригинальными мыс... текст свёрнут, показать
     
  • 3.23, Аноним (23), 12:48, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Оверинжиниринг -- это когда что-то сделали, а оно могло быть проще

    вы ошиблись

     
  • 3.31, НектоОткудаТо (?), 13:08, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не с целью поругаться, но по поводу "проще" - вот не могу назвать detached head удобной концепцией для тех, кто хочет перейти на произвольный коммит. Допускаю, что Вам и многим другим это может казаться простым. А вот мне и многим другим это простым не кажется. Вывод - что не просто для всей целевой аудитории, то простым не является.
     
     
  • 4.35, q (ok), 13:25, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не отличаешь "сложно" от "оверинжиниринг"? Извиняй чувак, но реальные самолеты управляются чуточку сложнее, чем WASD-клавиши (даже если ты на 146% уверен, что WASD хватает! тебе в играх их хватало во всяком случае!)
     
     
  • 5.124, НектоОткудаТо (?), 18:20, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Дело в том, что git - не самолёт.
    И задачи у него относительно несложные.
    А для таких несложных задач он слишком мудрён.
    В любом случае, это устоявшийся стандарт и знать его надо. Но вот только не надо утверждать, что это простой в управлении инструмент. Это не так)
     
  • 2.37, хрю (?), 13:36, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    git без оверинжиринга называется hg +). До сих пор до конца не умер. Для 95% коммерческих разработок его возможностей заглаза.

    Но интеграций уровня gitlab к сожалению нема, отсюда и проистекает к сожалению предсмертное состояние.

     
     
  • 3.52, Аноним (-), 14:18, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    У тебя странно в одном комментарии
    "Для 95% коммерческих разработок его возможностей заглаза" совмещается с "Но интеграций уровня gitlab к сожалению нема".

    Мысль что "интеграция уровня гитлаба это необходимое требовние для большей части коммерческой разработки" в голову не приходила?

     
  • 3.57, FSA (ok), 14:27, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > git без оверинжиринга называется hg +).

    Ты про Mercurial? Пользовался как-то им. Но он, увы, на Python 2 написан. А эту версию давно везде убрали как Legacy. А переписывать никто не хотел. Так что, фактически hg умер. Его даже с Bitbucket выкинули.

     
     
  • 4.70, Аноним (70), 14:51, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Удивительно, но есть Mercurial на C#!! Но его автор видимо настолько жадный и амбициозный, что просидел несколько лет в ожидании "сейчас меня купят за миллион" и благополучно просрал проект (вместо того, чтобы подарить его сообществу). Парень русский если что. Ну, или русскоговорящий. :)
     
     
  • 5.83, _kp (ok), 15:26, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Питон давно перегоняется автоматом в C# и точно работал.
    Ладно хоть не на Электрон переписал.
    Скорей всего поделку на C# вообще не смотрели, ибо проблем с ней будет больше чем со старым Питоном. :)  
     
  • 3.82, Аноним (76), 15:18, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > git без оверинжиринга называется hg +)

    Много лет назад повёлся на эти сказки и одному не-айтишному знакомому посоветовал hg, типа ему проще разобраться будет и мне на его вопросы не надо будет отвечать. Он словил там многоголовое состояние на первом pull и так и не смог его зарезолвить, поставил git и проблем с ним никаких не имел.

    > До сих пор до конца не умер. Для 95% коммерческих разработок его возможностей заглаза.
    >
    > Но интеграций уровня gitlab к сожалению нема, отсюда и проистекает к сожалению предсмертное состояние.

    То же можно и о cvs сказать. Только VCS выбирают не потому что она коммитить умеет, а потому что ей удобно (и вообще можно) пользоваться, и именно поэтому hg там же где cvs.

     
  • 3.89, name (??), 15:48, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Неправильно. Git без оверинжениринга называется Got. А hg это куча экскрементов на питоне.
     
  • 2.58, Аноним (58), 14:27, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Я думаю, ты путаешь овер-инжиниринг и андер-инжиниринг Оверинжиниринг это та ед... большой текст свёрнут, показать
     
     
  • 3.143, Аноним (143), 22:53, 30/06/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.3, Аноним (3), 11:52, 30/06/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Ждём форка или независимой реализации на любом языке из набора GCC. Gccrs ещё не готов.
     
     
  • 2.10, Аноним (10), 12:04, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –6 +/
    > Ждём форка или независимой реализации на любом языке из набора GCC. Gccrs ещё не готов.

    Но зачем?
    Оно отлично собирается clang/llvm под свободной лицензией.
    Зачем делать форк для гнуракового убожества?

     
     
  • 3.15, Аноним (3), 12:24, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Потому что, GCC forever! Лучше, чтобы весь бинарный код был сгенерирован одним кодогенератором. По крайней мере, код базовых компонентов системы.
     
     
  • 4.41, Аноним (41), 13:52, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Угу, часть крейтов фейлится или компилится неправильно, если шланг не единственный компилятор в системе. Я знал, что растолюбы тупые, но такой дичи не ожидал. Ну, чтобы не быть голословным, присмотрись к proc-macro2.
     
     
  • 5.54, Аноним (-), 14:21, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –4 +/
    > Угу, часть крейтов фейлится или компилится неправильно, если шланг не единственный компилятор в системе.

    А зачем учитывать мнение любителей несвободного софта?

    > Я знал, что растолюбы тупые, но такой дичи не ожидал.

    Gonna cry? (c)
    Без "тупых" растолюбов ты уже гит не соберешь. Возможно тупой некто другой?))

    > чтобы не быть голословным, присмотрись к proc-macro2.

    И? Присмотрелся.
    Где твой список претензий, ну или хотя бы нытья?

     
     
  • 6.62, Аноним (3), 14:36, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Любитель ты наш(?) полусвободного софта.
     
  • 6.66, Аноним (41), 14:44, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В этом и дело, для всех пакетов в которые добавлялся раст, приходится менять компилятор, но после этого всё равно пытается собирать гцц. Я смотрю, некоторые RUSTFLAGS игнорят и параметры линкера не передашь крейту. Всё ломается, как результат.
     
  • 5.63, Аноним (58), 14:40, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У меня как-правило в системе стоит по паре-тройке версий llvm и gcc, и я не стал... большой текст свёрнут, показать
     
     
  • 6.67, Аноним (41), 14:46, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Какой у тебя компилятор установлен как cc? Я librsvg не мог собрать из-за proc-macro2, пока не разобрался, в чём дело. Посмотри обсуждение.
     
     
  • 7.100, Аноним (100), 16:53, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Обсуждение чего и где cat which cc bin bash export LANG C usr bin gcc ... большой текст свёрнут, показать
     
     
  • 8.111, Аноним (41), 17:51, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот этот баг https bugs gentoo org 960828 Но проблема не единичная, видимо, у ... большой текст свёрнут, показать
     
     
  • 9.116, Аноним (41), 18:02, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Во всяком случае, спидометр31 я ускорил в 3 раза относительно дефолта, но выгляд... текст свёрнут, показать
     
  • 6.73, Аноним (73), 14:53, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Что я^W LLM сделал не так?

    вот что
    > Хмм... Я попросил LLM сгенерировать простейший проект для теста твоих заявлений и:

    ты просто взял и проверил.
    Вместо бездоказательного звездежа, который аноним 41 вбросил то ли с целью срубить плюсцов, то ли просто в силу своей глупости.

     
     
  • 7.75, Аноним (41), 14:59, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А ты, видимо, тоже большой поклонник нейронок? Seems appropriate для поклонника раста.

     
  • 3.27, Аноним (3), 12:57, 30/06/2026 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 3.38, Аноним (110), 13:41, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > clang/llvm

    Это который отстает в реализации стандартов?

     
  • 3.42, Аноним (42), 13:54, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Потому что иметь один компилятор в виде rustc - потенциальная проблема с бэкдором. Единая точка для встраивания вредоносного кода. Нет альтернативных компиляторов. Рано или поздно стрельнет такая штука как описывал Кен Томпсон в "Reflections on Trusting Trust".
     
     
  • 4.55, Аноним (55), 14:26, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да-да, та самая стршная статья на которую психи фапают уже десяток лет.

    А тем временем в ядре Dirty Fag'и делаютт Copy Fail'ы.
    Сайт kernel компрометируют и добавляют бекдор.
    Но это не страшно, так как в самом ядре бекдор от АНБ дил 10 лет.

     
  • 4.79, Аноним (76), 15:13, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это лечится бутстрапом на старых версиях, для этого ни разу не нужен второй компилятор.
     
     
  • 5.127, Аноним (127), 19:06, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Собирать текущий компилятор Rust с какой-нибудь достаточно старой версии, чтобы убедиться в отсутствии дыр в коде пробовали? Как успехи?
     

  • 1.46, Гуманоид (?), 14:00, 30/06/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    Эта консольная утилита для скачивания кода с гитхабов уже слишком сложна.
     
  • 1.53, FSA (ok), 14:21, 30/06/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В команду "git push" добавлена возможность помещения ветки на несколько внешних Git-серверов одной командой. Например, для передачи ветки main не только на основной сервер, но и на зеркала можно создать группу "publish" из серверов "github", "gitlab" и "mirror":

    Да неужели!!! Это просто хорошие новости. А то приходилось свои костыли использоваться для этого:
    '''
    function gpa() {
        for server in $(git remote -v | cut -f1 | uniq) ; do
            echo "git push $server"; git push $server
        done
    }
    function gpat() {
        for server in $(git remote -v | cut -f1 | uniq) ; do
            echo "git push $server --tags"; git push $server --tags
        done
    }
    '''

     
     
  • 2.86, Аноним (86), 15:37, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Подвести несколько url-ов под один remote, чтобы пуш в нескольк разных серверов происходил одной командой, можно было и раньше. Тут же просто добавили агрегат второго уровня над remote-ами
     

  • 1.56, Аноним12345 (?), 14:26, 30/06/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    возвращаясь собственно к новости:
    а нахрена раст в гите ?
     
     
  • 2.64, Аноним (3), 14:40, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Модно, стильно, молодёжно.

    PS Вот бы Zig ещё добавить.

     
  • 2.93, Аноним (93), 16:12, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > а нахрена раст в гите ?

    because)

    А если серьезно, то убогость СИшки оценили на дыренях в ядре, драйверах, пользовательском софте и тд.
    Некоторые просто пишут рядом новый проект на расте (типа TOR/Arti).
    Некоторые добавляют новый код.

    В 3.0 вообще предлагали сделать раст обязательной зависимостью
    opennet.me/opennews/art.shtml?num=63914

     
     
  • 3.128, Аноним (127), 19:10, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так в дырявости программ на Rust уже всё давно убедились. От упавшего на несколько часов Cloudflare из-за .unwrap (и это в safe-коде!) и до горы дыр в uutils.
     
     
  • 4.129, Аноним (129), 19:18, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Так в дырявости программ на Rust уже всё давно убедились.

    Эти "все" с тобой сейчас в одной комнате?
    То что кyкаpeкают kловaны в интернетах мало кого волнует.

    > От упавшего на несколько часов Cloudflare из-за .unwrap (и это в safe-коде!)

    В прошлый раз у них полгода утекали пользовательские данные.
    Из-за дырявой СИшки.

    > и до горы дыр в uutils.

    Нашли и починили.

    Решают те кто делает.
    Поэтому раст-код работает в андроиде, на нем пишут для видях, Rusticl выкинул на помойку кловер.
    И вот гит. Просто пришло его время)

     
     
  • 5.130, Аноним (127), 19:37, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Эти "все" с тобой сейчас в одной комнате?

    Какой-то очень глупый вопрос. Все - это те, кто интересуется IT. Хотя да, нужно заметить, что большое количество онлайн игроков тоже узнали про дырявый Rust.

    >В прошлый раз у них полгода утекали пользовательские данные.

    А ничего, что упавший по вине Rust Cloudflare привел к настоящим жертвам? Такое, для безопасного языка.

    >Нашли и починили.

    Но не все. Интересно, какие там ошибки, что их сразу исправить не смогли?

    >Решают те кто делает

    Технически да, и те, и другие делают, вот только одни пишут, а другие переписывают.

     
     
  • 6.132, Аноним (132), 20:18, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Интересуется Я думал это хотя бы те, кто код пишут К каким жертвам Ты что бре... большой текст свёрнут, показать
     
     
  • 7.136, ProfessorNavigator (ok), 21:46, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Да. Все равно лучше чем СИ.

    А дайте-ка нам ссылочку на проект с вашим участием, уважаемый "эксперт". Чтобы мы увидели ваш код и уровень вашей квалификации. (до эффекта "пачка дрожжей в выгребной яме" 3... 2... 1...).

     
  • 2.141, Анон1110м (?), 22:28, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    У меня встречный вопрос: почему не JavaScript? Самый быстрый единственно асинхронный никогда не блокирующий самый революционный самый недооценённый самый кроссплатформенный, скрытый самородок который много лет оставался непоянтым.
     

  • 1.71, Аноним (71), 14:53, 30/06/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >c включением по умолчанию поддержки Rust

    Это какой-то новый скриптовый язык для гита?

     
  • 1.92, Аноним (92), 16:09, 30/06/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Посоветуйте альтернативы. Тащить раст в зависимости не хочу.
     
     
  • 2.96, Анонимно12340 (?), 16:24, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Got от разрабов openbsd.
     
  • 2.98, Ivan_83 (ok), 16:48, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Можно и не обновлятся на 3.хх ещё лет 10+.
     
     
  • 3.101, Аноним (101), 17:09, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Конечно можно.
    Можно даже на С89 писать.
    Но зачем? (с)

     
     
  • 4.139, Аноним (139), 22:20, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Затем, что лучшее человечеством придумано не было, а худшего напичкано было затем...
     
  • 3.118, Аноним (3), 18:13, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А лет через 5 можно вполне просить какого-либо чата бекпортировать фичи в ветку 2.x.
     
     
  • 4.122, Аноним (110), 18:18, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Очевидно, бекпортировать будут и тут. В git зоопарк доступных для разработки языков. Но, все, что стало использоваться часто, в итоге переписывается на C.

    Делаешь загончик для rust'овиков. Они так играются, если у них что-либо получается - переписываешь для переносимости.

     
  • 2.99, Гуманоид (?), 16:52, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Если не нужен сервис по типу гитхаба, то любая другая система контроля версий, начиная с SVN.
     
     
  • 3.113, Аноним (113), 17:54, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Если не нужен сервис по типу гитхаба, то

    ... хватит Новая Папка (14). Гит нужен для _совместной_ разработки. Сам с собой наедине что и куда ты собираешься мержить-то?

     
     
  • 4.123, Аноним (123), 18:20, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/

    > ... хватит Новая Папка (14).

    Не хватит если изменения хотя бы в 2-3 разных файлах.

    > Гит нужен для _совместной_ разработки. Сам с собой наедине что и куда ты собираешься мержить-то?

    Даже когда я создаю проект сам, я делаю это в гите.
    Так как история измеений это удобно.


     
  • 2.137, Анон1110м (?), 22:11, 30/06/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.138, Аноним (138), 22:12, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    fossil-scm. Его пилит автор sqlite. Не знаю, плюс это или минус.

    Но вообще довольно приятная штука для небольших проектов. Репозиторий хранится в одном sqlite файле. Есть веб-гуи искаропки.

    Да, написано на сишечке, и вроде автор не собирается никуда перекатываться или добавлять что-то новомодное.

    То есть комьюнити минимально токсичное, нет этих поехавших, которые от всего ущемляются

     
     
  • 3.142, Анон1110м (?), 22:35, 30/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    CVS лучше.
     

  • 1.140, Анон1110м (?), 22:24, 30/06/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру