Подготовлен (https://lkml.org/lkml/2018/12/9/39) выпуск распределенной системы управления исходными текстами Git 2.20.0 (http://git-scm.com/). Git является одной из самых популярных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям задним числом используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов. По сравнению с прошлым выпуском в новую версию принято 962 изменения, подготовленных при участии 83 разработчика, из которых 26 впервые приняли участие в разработке.Основные новшества (https://github.com/git/git/blob/v2.19.0/Documentation/RelNot...):
- Добавлен код для обнаружения на стадии выполнения "git clone" ситуаций, когда в репозитории встречаются файлы, пути к которым отличаются только регистром символов (например, path/file.txt и /path/File.Txt). Так как не все файловые системы различают регистр символов при выявлении подобных пересечений теперь выводится предупреждение;
- Добавлена оптимизация, сокращающая объём вычисления при оценке различий: исключён учёт delta-изменений для объектов из одного ответвления с другими объектами, которые не появляются в том же ответвлённом репозитории;
- В команду "git format-patch" добавлены опции "--interdiff" и "--range-diff" для отображении в примечании списка различий между текущей и предыдущей версиями;
- В команду "git mailinfo", которая также используется в "git am", добавлена возможность восстановления патчей, повреждённый из-за изменения расстановки переводов строки при отправке текста почтовыми клиентом в режиме "format=flawed";- Приняты более жёсткие правила в отношении "git push" и "git fetch", в случаях когда обновление ссылки приводит к нарушению согласованности, например, при извлечении и обновлении в существующие тэги. Команда "git fetch" теперь запрещает извлечение в существующие теги при вызове без явного указания опции "--force";
- В команды "git multi-pack-index" и "git fsck" добавлен код для определения повреждений в индексных файлах ".midx";
- Добавлен индикатор прогресса при генерации файлов с графом коммитов (commit-graph) и при выполнении "git status" при обновлении индекса.
Данные операции могут занимать достаточно много времени, что требует информирования пользователя для исключения впечатления о зависании;
- Повышены требования при работе на платформе Windows, в качестве минимальной поддерживаемой версии заявлена Windows Vista;
- В скрипты автодополенения ввода, поставляемые в contrib/, добавлена поддержка опций команды "git stash list". Дополнение для команды "git fetch --multiple" ограничено только именами с внешних хостов;- Подсказки, выводимые при помощи команд "git help -a" и "git help -av", разделены и сделаны более понятными новичкам. Вторая команда отличается кроме подробной информации о команде выводом списков альтернативных имён и внешних команд;
- В команду "git grep" добавлена опция "git grep --recursive", отражающая поведение по умолчанию (обход всего дерева). Команда
"git grep --no-recursive" может рассматриваться как аналог выставления настройки max-depth в значение 0;- При отправке push-запроса к репозиторию, в котором используется альтернативное внешнее хранилище для хранения объектов, удалённый обработчик "git receive-pack" передаёт список используемых ссылок на внешнее хранилище для сокращения объёма передаваемых объектов. В случае очень большого числа подобных ссылок, экономия трафика за счёт сокращения числа передаваемых объектов сводится на нет необходимостью передачи списка очень большого размера. В новой версии добавлены настройки для управления выдачей информации об альтернативных ссылках;
- Команда "git cmd --help" в случае, если "cmd" является псевдонимом другой команды, теперь не только выводит ссылку на основную команду, но и сразу выводит подсказку для этой команды;
- Улучшена работа команды "git p4 unshelve";
- В команде "rev-list --filter" добавлена поддержка фильтра "tree:0" для исключения всех деревьев;
- В команде "git send-email" реализовано выявление строк с адресами из всех примечаний, заканчивающихся на "-by". Для отключения нового поведения добавлена опция "--suppress-cc=misc-by" и настройка "sendemail.suppresscc = misc-by";
- Модернизирована логика выбора имени пользователя и email на платформе Windows;
- В "git mergetool" добавлена опция "--[no-]gui", работающая по аналогии с "git difftool";
- В команду "git rebase -i" добавлена поддержка ключа 'break', который можно добавлять в списки to-do для индикации конца списка до его фактического завершения;- Для опции "--pretty=format:" предложены новые заполнители "%GF" и "%GP", показывающие слепки ключей GPG;
- Для платформ со свежими версиями библиотеки cURL добавлена настройка http.sslBackend, позволяющая выбрать различные бэкенды для обработки защищённых HTTPS-соединений. В Windows данная настройка позволяет
переключиться между использованием OpenSSL и Secure Channel;
- В команду "git send-email" добавлена опция "--smtp-auth=none" для отключения SMTP-аутентификации, даже если в настройках задано имя пользователя для SMTP;
- Добавлен новый класс файлов конфигурации, прикрепляемых к разным рабочим веткам в одном репозитории (до этого предоставлялась возможность определения глобальных настроек, привязки к домашнему каталогу пользователя и привязки к репозиторию ($GIT_DIR/config));
- Маска '**', указанная без слеша с одной из сторон, которая считалась некорректной, теперь воспринимается как маска для определения наличия двух символов звёздочка;- Реализации команд "git submodule update", "git rebase" и "git rebase -i" полностью переписаны на языке Си. Проведена чистка кода, используемого для команд "git status" и "git commit --dry-run";- Обеспечена возможность параллельного чтения индексных файлов для повышения производительности. Увеличена эффективность обхода дерева репозитория при извлечении веток и операциях слияния. Внесены оптимизации при частичном клонировании, связанные с кэшированием.URL: https://lkml.org/lkml/2018/12/9/39
Новость: https://www.opennet.dev/opennews/art.shtml?num=49751
Ого, как много новшеств. Пусть меня покусают фанатики, но я не припомню, чтобы в минорном релизе раньше их было так много.
> чтобы в минорном релизе раньше их было так много.Так там же мелочи. И по сути это не минорный, а просто очередной релиз. Как и с ядром.
> Наиболее важным нововведением Git 2.18 является интеграция поддержки второй версии коммуникационного протокола Git
Вот это было настоящее нововведение! А то с некоторыми репозиториями несколько git fetch для обновления по объёму переданных данных были эквиваленты полному git clone.
> Так там же мелочи. И по сути это не минорный, а просто
> очередной релиз. Как и с ядром.Ну так-то да, проект по сути готов, сейчас просто сопровождение. Но всё равно, во преки паникёрам - не закапывают, не лочат, а вполне себе дорабатывают, подкручивают, латают.
Для скачивания доступен только 2.19.1
Под винду всегда с отставанием. Напильником дорабатывают
Больше интересует, когда обновление завезут в менеджер Visual Studio Installer?
Зачем? Оно прекрасно понимает, когда что-то обновляется руками, гит тот же или питон, и не отказывается потом с новым работать
> Под винду всегда с отставанием. Напильником дорабатывают"Latest source Release"
Ну да логично.
Интересно как быстро бинарники попадают в линуксовые репы.
В арч уже завезли
> В арч уже завезлиЯ конечно не большой спец в дистрибутивах. Но я так понимаю это сарказм? ))
Во всём есть свои плюсы и минусы.
Есть на
https://github.com/git-for-windows/git/releases/tag/v2.20.0....
просто на основном сайте страницы с ссылками ещё не обновили (скептики могут убедиться лично, что ссылки с https://git-scm.com/download/win ведут именно на этот репозиторий).
> Есть на
> https://github.com/git-for-windows/git/releases/tag/v2.20.0....
> просто на основном сайте страницы с ссылками ещё не обновили (скептики могут
> убедиться лично, что ссылки с https://git-scm.com/download/win ведут именно на этот репозиторий).Забавно но за сутки уже что-то поменяли. На git-scm после клика на линк (версия 19) начиначется скачивание 20ой.
Поддержки докачки не хватает
> Поддержки докачки не хватаетНусделайчё.
И стриминга видео в терминал
Диски тоже не прожигает.
1/5
А м****т, м****т то забыли!
магнит?
мармелад
Мармелат
Все это прикольно и весело, и интересно. А на практике ладно, если с 10 команд используется. И усе.
Огнетушителем ты тоже каждый день пользуешься?
Погоди, вот зад задымится, быстро git blame и иже с ним освоишь.
> Все это прикольно и весело, и интересно. А на практике ладно, если
> с 10 команд используется. И усе.--А на практике ладно, если с 10 команд используется. И усе.
--Ну, надо же себя заставлять.
> Все это прикольно и весело, и интересно. А на практике ладно, если
> с 10 команд используется. И усе.так для попугаев и это уже много.
ну что там? новый hash когда уже?
> ну что там? новый hash когда уже?В 3.0. Мажор же.
> В 3.0. Мажор же.вроде бы уже давно все современные проекты отказались от специфици major.minor.patch :-) ..
для проектов где 3 цифорки -- меняют первую цифорку лишь когда вторая цифорка достигает неудобно-большого зачения (при этом "уровень неудобства" оценивают субъективно).
то есть если не патч (исправление багов) то значит мажорное изменение.
для остальных проектов: major.patch ну-или-либо major.0.patch (цифорка "нуль" посередине -- просто для совместимости "со старым миром")
> все современные проекты95% поди?
> от специфици major.minor.patch :-)
Отказались, аж два раза.
semver.org
> semver.orgЛинус брезгливо смотрит на эту ссылку.
> semver.orgда, отказались вот именно от того что чему посвящён этот сайт. спасибо за уточнение
Единственная версия которую ты знаешь это версия гугль хрома. Трудно тебе наверно.
Скажите, а чем оно отличается от Subversion?
Subversion - single point of failure (грохнулся сервак и гуд бай), git - redistributed,.т.е. каждый кто скачал репу имеет полную копию
> Скажите, а чем оно отличается от Subversion?Читать умеешь?! Под кажной новостью. Же. И не только про гит.
http://www.opennet.dev/openforum/vsluhforumID3/112416.html#31
~https://git.wiki.kernel.org/index.php/LinusTalk200705Transcript
http://www.opennet.dev/openforum/vsluhforumID3/107331.html#9
Остаюсь с https://fossil-scm.org/ , уж больно git перемудренный (больше время на изучение всех его фич уходит чем на работу), в то время как фоссил делает практически все что и гит, но в придачу это один единственный статически скомпиленный файл, который имеет прекрасный веб интерфейс и консоль, плюс встроенную ВиКи и тикеты...
Если ты один им пользуешься то норм, а если кого-то ещё заставляешь то это плохо.
> Если ты один им пользуешься то норм, а если кого-то ещё заставляешь
> то это плохо.А можно поподробней, - почему плохо? SQLite вполне себе доказывает коллективное использование.
Уже лет десять коллективно его используем и плохо не было. Даже если и приходится работать с проектами на гит-е, локально все равно удобней с фоссилом, чтоб не комититить все промежуточное в общую репу. Т.е. локально юзать фоссил, а пушать working tree гитом.
Вы как-то странно гит воспринимаете, если думаете, что с ним надо "комититить все промежуточное в общую репу".А так - зависит от масштабов, наверное. Но, помнится, даже для мелкого игрушечного проектика на двоих вместо фоссиловской системы тикетов как-то быстро завёлся мантис.
Но основной минус фоссила в том, что он не гит :-) В том смысле, что с гитом работать всё равно придётся, соответственно изучать его и держать в системе - тоже. И фоссил сразу становится избыточным.
Единственная причина использовать фоссил это если ты разработчик sqlite.
> Вы как-то странно гит воспринимаете, если думаете, что с ним надо "комититить
> все промежуточное в общую репу".Да нормально я гит воспринимаю и пользуюсь им, просто локально удобней хранить историю в фосиле, с паролями, емэйлами и прочей sensitive information, а гитом только пушать в общую репу вычищенный проект и в то же время можно быстро вернуться к рабочей версии фосилом. Смысл - удобство локального веб интерфейса с человеческим diff и историей без запоминания массы гитовских опций, удобная встроенная WiKi с markdown и вполне адекватная встроенная система тикетов без необходимости разворачитвать что то еще из 3rd party, а также возможность практически мнгновенно перебросить репу на другие ноды, просто скопировав два файла - фосиловскую база и сам фосил без установок на других системах новых програм и лишнего передергивания root-a (для того чтоб установить гит и его приблуды).
> А так - зависит от масштабов, наверное. Но, помнится, даже для мелкого
> игрушечного проектика на двоих вместо фоссиловской системы тикетов как-то быстро завёлся
> мантис.Вполне согласен ! Зависит все от задачи и я не вижу профита покупать самосвал чтоб ездить в булочную для моих случаев. Для сисадимновских задач, - хранить историю /etc и чекать integrity веб сайтов и трэкать самопальные системные утилитки - фосила за глаза хватает... и позволяет за минуту организовать совместную работу (особено - когда "все горит", а в админовских делах это случается частенько)
Я согласен, что если программирование - это основной источник дохода, то есть смысл потратить на гит время если его функционал используется ежедневно, но когда манипулирование историей проекта от "случая к случаю", то это занимает значительное время перечитывать заново и заново кучу гитовских комманд и их опций. С фосилом же такое workflow значительно продуктивней и удобней.
> Но основной минус фоссила в том, что он не гит :-) В
> том смысле, что с гитом работать всё равно придётся, соответственно изучать
> его и держать в системе - тоже. И фоссил сразу становится
> избыточным.Все что мне нужно запомнить в гите - это в основном "туда-сюда" синхронизация, к тому же назвать избыточным один единственный файл, у меня язык не поворачивается, а изучать его практически не надо, т.к. команды - совместимые с гитом
Потому что дурной пример заразителен.
> Потому что дурной пример заразителен."Если мнение не сходится с моим - то ДУРНОЙ пример" ?
Очень "веский" аргумент !!!
Здесь детский сад где все - "дурак - сам дурак" или все таки есть хоть чуть-чуть культуры ?Я кажется нигде не обзывал фанбоев гита, не так ли ?
Так это не ты дурной, а пример дурной. После того и появляется зоопарк форматов на любые простые действия. Чего стоят только гульп, грунт, вебпак и на фронте ангуляр, реакт, вуе. Делают одно и тоже но по разному и под каждую технологию надо подстраиваться. И каждый знает какой подход правильный, но у всех разный как так можно.
> Так это не ты дурной, а пример дурной.Не согласен. Есть пневматический отбойный молоток, а есть простой, ручной и у каждого свое применение. Если все подгонять все под один инструмент, тогда кроме отбойного молотка ничего не останется, а монополия как известно - не есть гуд. Гит - это профессиональный инструмент профессионального програмиста занятого в больших, сложных проектах с кучей людей, с ветками, мержами и т.д., где все изобретенные множество функций имеют свое применение. Фосил же с другой стороны, это очень легкий инструмент, но при всем при этом, имеет практически все что и гит и даже то чего нет у большого брата, - портативность (нет необходимости устанавливать от имени рута и вся репа - это один единственный файл. Установка что на лине, что на фряхе, что в винде - просто копирование одного файла, не подтягивая администраторских привилегий) а так же веб интефейс из коробки, встроенная ВиКи для документации и встроенная система тикетов, а также значительно меньшее количество опций для каждой команды. (Я работаю с одной большой програмисткой компанией и даже там, где гит используется повседневно, сам видел - не все програменры знают наизусть все фичи гита и теряют время на манулах)
> После того и появляется зоопарк форматов на любые простые действия.
Фосил кстати не уходит от формата и переучиваться с гита не надо, команды - совместимые, бэкенд и фронтенд - другой. Фосил и гит ведь можно использовать не только в програмировании, но и для обыкновенной документации, для защиты целостности файлов с возможстью отката (пример - /etc директрория или тот же вордпрес чтобы мнговенно поймать измененные или левые файлы)
Скажу проще - для каждой работы, надо использовать соответсвующий инструмент а не слепо делать - "как все". Я вовсе не против гит-а, очень классный, но довольно сложный интсрумент и применение его везде не всегда оправдано, попробуйте фосил, вы поймете о чем я говорю.> Чего стоят только гульп, грунт, вебпак и на фронте ангуляр, реакт, вуе.
Искрение разделяю Вашу боль, - люди больше следуют модному тренду, чем применяют нужный инструмент к конкретной задаче и в большинстве из них Реакт - это overkill.
Вот здесь кстати очень интересный момент, DevOp-сы яростно защищают Реакт с теми же аргументами как и вы защищаете гит и не понимают - что концентрирование всего вокруг одного - это монополия (на власть? учитывая то, кто эти ангуляры и реакты толкает в массы)> Делают одно и тоже но по разному и под каждую технологию надо подстраиваться.
Говорят - это прогресс :) А учитывая человеческую(?) сущность - слепо бежать не раздумывая туда, куда бежит все стадо, то очень легко манипулировать толпой направляя в нужную сторону туда куда надо сильным/хитрым/жадным, отсюда эти ангуляры и реакты.
Разнообразие и конкуренция - вообще-то, это хорошо, жалко только что разнообразие вносят в основном хитрожопые, обмазывая скрытую говняшку - шоколадом. Бесплатный сыр в мышеловке...
А на счет фосила и гита, технология та же самая в обоих - Distributed Concurrent Versions System с совместимыми командами и идеологией.
По мне так лучше разнообразие, чтобы подобрать соответствующий тулз для каждой конкретной работы.> И каждый знает какой подход правильный, но у всех разный как так можно.
Это уже больше из философии, остается либо подстраиваться, либо - out of business... к сожалению
Наверно я за гит потому что и есть девопс)
> Остаюсь с https://fossil-scm.org/ , уж больно git перемудренный (больше время на изучение
> всех его фич уходит чем на работу), в то время как
> фоссил делает практически все что и гит, но в придачу это
> один единственный статически скомпиленный файл, который имеет прекрасный веб интерфейс
> и консоль, плюс встроенную ВиКи и тикеты...Без ESR-а не алё! http://esr.ibiblio.org/?p=8205
|
http://www.opennet.dev/openforum/vsluhforumID3/111315.html#50 2017 шутил
http://www.opennet.dev/openforum/vsluhforumID3/113343.html#20 2018-01 шутил
http://www.opennet.dev/openforum/vsluhforumID3/114463.html#38 2018-06 больше не шучу
> Без ESR-а не алё! http://esr.ibiblio.org/?p=8205
> |Андрей, а при чем тут ESR, который вообще рядом не лежит в фоссилом и гитом?
> http://www.opennet.dev/openforum/vsluhforumID3/111315.html#50 2017 шутил
> http://www.opennet.dev/openforum/vsluhforumID3/113343.html#20 2018-01 шутил
> http://www.opennet.dev/openforum/vsluhforumID3/114463.html#38 2018-06 больше не шучуОпять не вьехал... :( при чем здесь ГИТ?
>> Без ESR-а не алё! http://esr.ibiblio.org/?p=8205
>> |
> Андрей, а при чем тут ESR, который вообще рядом не лежит в
> фоссилом и гитом?Не при чём. Как и фосил к новости про гит.
Реймонд велик. Я разговор поддерживаю! =набрасывание ненужного на собеседника.
>>больше не шучу
> Опять не вьехал... :( при чем здесь ГИТ?Не при чём. Я велик. Кстати обо мне!
Кто то пишет велосипеды, а кто то сам является велосипедом. Ох уж этот опеннет.
> Кто то пишет велосипеды,Не кто-то, а чувак, база данных которго самая используемая во всем мире и его велосипед мне по душе больше чем другие :)
>а кто то сам является велосипедом. Ох уж этот опеннет.
Не, Андрюху я б в велосипеды не взял, ты ему check-in одно, а он check-out другое, так не ровен час и звиздануться можно с такого велосипеда :)
Поэтому многие и не любят велосипеды.
> Остаюсь с https://fossil-scm.org/ну и дурак
>> Остаюсь с https://fossil-scm.org/
> ну и дуракОчень аргументированно :)
"Кто не скачет с нами - тот дурак..."
ну-ну
> это один единственный статически скомпиленный файлстатически?! лол!! в 2019-году это просто смешно 😂!
и как же он например выясняет как разрешить DNS имена?
предположим файла /etc/resolv.conf у сеня в системе нет -- какое будет поведение бинарника для перевода Имени Сервера в IP-адрес? :-)
// P.S.: это я уж молчу с вопросом про vDSO и эффективность системных вызовов
> статически?! лол!! в 2019-году это просто смешно 😂!
> и как же он например выясняет как разрешить DNS имена?
> предположим файла /etc/resolv.conf у сеня в системе нет -- какое будет поведение
> бинарника для перевода Имени Сервера в IP-адрес? :-)
> // P.S.: это я уж молчу с вопросом про vDSO и эффективность
> системных вызововВы прежде чем обзываться и "умничать" на весь свет, почитайте сперва, - что такое статически скомпилированный файл, ну или хотя бы протестируйте чтоб не лажаться :)
оно не умеет читать.
> Вы прежде чем обзываться и "умничать" на весь свет, почитайте сперва, - что такое статически скомпилированный файл, ну или хотя бы протестируйте чтоб не лажаться :)чтобы понять почему в 2019 году уже почти никто не компилирует почти ничего статически -- прочитайте какие ограничения накладываются на программы скомпилированные статически
Вот ведь Гугель попал тогда, не посоветовшись с вами...
"Глупцы" практически, развивают GoLang (который становится все популярней и популярней) и даже не догадываются о ограничениях... а смак то Го програм в том, что им начихать на зависимости.Rescue & live critic системы тоже наверное - практически "почти никто"... NASA в "полной лаже" мля...
> чтобы понять почему в 2019 году уже почти никто не компилирует почти
> ничего статическиВот такой аргумент, - не катит, с потолка.
> -- прочитайте какие ограничения накладываются на программы скомпилированные
> статическиОграничения? В чем ? Все что надо программе, она уже притащила все с собой и не зависима от библиотек. Статический скомпилированный файл будет работать практически на любой версии операционки, единственное что нужно - это только платформа, - линь, фря или винда и похер какая версия.
Ну да, файл пожирнее (who cares about it nowadays ?), зато надежность, легкость обновления и стабильность
>Повышены требования при работе на платформе Windows, в качестве минимальной поддерживаемой версии заявлена Windows Vista;А что не Windows 10 сразу?
а что не win95?
>>Повышены требования при работе на платформе Windows, в качестве минимальной поддерживаемой версии заявлена Windows Vista;
> А что не Windows 10 сразу?МС ещё только платиновый. Иридиевого ждут.
> А что не Windows 10 сразу?Подожди, MS улучшенную поддержку платформы виндоус для новой версии приберег.
ЗЫ какая платформа - такие и коммитеры с ченжлогами.