Представлен (https://lkml.org/lkml/2014/11/26/674) релиз распределенной системы управления исходными текстами Git 2.2.0 (http://git-scm.com/). Git является одной из самых популярных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям задним числом используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов. Из проектов, разрабатываемых с использованием Git, можно отметить ядро Linux (https://git.kernel.org/cgit/linux/kernel/git/stable/linux-st.../), Android (https://android.googlesource.com/), Libreoffice (http://cgit.freedesktop.org/libreoffice), Systemd (http://cgit.freedesktop.org/systemd), X.Org (http://cgit.freedesktop.org/xorg), Wayland (http://cgit.freedesktop.org/wayland), Mesa (http://cgit.freedesktop.org/mesa/), Gstreamer (http://cgit.freedesktop.org/gstreamer), Wine (http://source.winehq.org/git/wine.git), Debian (http://anonscm.debian.org/gitweb), DragonFly BSD (http://gitweb.dragonflybsd.org/?p=dragonfly.git;a=summary), Perl (http://perl5.git.perl.org/perl.git), Eclipse (http://git.eclipse.org), GNOME (http://git.gnome.org/browse/), KDE (https://projects.kde.org/projects), Qt (http://qt.gitorious.org/), Ruby on Rails (https://github.com/rails/rails), PostgreSQL (http://git.postgresql.org/gitweb/), VideoLAN (http://git.videolan.org), PHP (http://git.php.net/), Xen (http://xenbits.xen.org/gitweb/), Minix (http://git.minix3.org/).
По сравнению с прошлым выпуском в новую версию принято более 550 изменений, подготовленных при участии 77 разработчиков, из которых 20 впервые приняли своё участие в разработке. Основные изменения:
- В "fast-export" добавлена опция "--anonymize", позволяющая при экспорте заменить содержимое произвольных блобов, имён разработчиков, путей и записей в логе на строки-заглушки. Подобное необходимо когда требуется сообщить об ошибке, но присутствуют ограничения по раскрытию некоторого содержимого в публичном репозиторий;
- В команду "git push" добавлена опция "--signed", позволяющая выполнить push-обновление на сервер, не заслуживающий доверия, с использованием цифровой подписи для последующего аудита и проверки привязки веток в публичном репозитории к необходимым коммитам;
- В "git archive" добавлена возможность фильтрации попадающего в архив содержимого по файловому пути (pathspec);
- В случае отсутствия привязанного к пользователю файла конфигурации (core.user) выполнение "git config --edit --global" отныне приведёт к выводу в редакторе базового шаблона конфигурации, а не пустого экрана;
- При выполнении команды "git stash list -p" теперь отображаются отличия основной версии коммита и версии из рабочего дерева по аналогии с "git stash show";
- В "git difftool" добавлена опция для отключения передачи путей в diff-бэкенд, если он завершил своё выполнение с ненулевым кодом возврата;
- В "log --date=iso" использован компактный вариант формата ISO 8601, который более удобен для восприятия человеком. Для полного следования требованиям стандарта вывода даты добавлена опция "--date=iso-strict";
- В логике работы "git prune" учтены различные пограничные ситуации;- Добавлена защита от использования неоднозначных индексов, создаваемых некорректными реализациями Git, в которых для одного пути содержатся записи для нескольких стадий;
- Изменено наименование создаваемых при выполнении команды "git mergetool" временных файлов, для того чтобы избежать слишком большого числа точек в именах (вместо наименования "hello.BASE.4321.c" теперь используется "hello_BASE_4321.c"). Добавлена возможность размещения подобных временных файлов в отдельной директории, которую можно определить через директиву конфигурации "mergetool.writeToTemp";
- Представлен новый спецификатор "%D", который, в отличие от "%d", выводит имя тега без оформления (при "%d" выводится " (tagname)", а при "%D" просто "tagname");
- Добавлен новый фильтр "git interpret-trailers", позволяющий откорректировать хвост сообщения к коммиту (содержит "Signed-off-by:");
- Добавлена команда "git help everyday", при выполнении которой выводится руководство "Everyday Git in 20 commands or so";
- Сокращено потребление памяти и увеличена эффективность обработки параметров слияния при работы команды "git svn";
- В "git fsck" добавлены дополнительные проверки целостности содержимого объектов, связанных с тегами;- В "git hash-object" добавлена опция "--literally" для упрощения отладки;
- API для манипуляции ссылками ("refs") реструктуризирован для придания более транзакционного характера и поддержки атомарных обновлений при размещении хранилищ не только в традиционных ФС (наприимер, в СУБД);
- Проведена чистка API для работы с файлами блокировок;- Добавлена подсистема для кэширования параметров конфигурации, позволяющий избавиться от многократного чтения файлов конфигурации при выполнении некоторых команд.
Дополнительно можно отметить публикацию (https://try.github.io/levels/1/challenges/1) интерактивного руководства, позволяющего за 15 минут легко обрести основные навыки использования Git и взаимодействия с GitHub.URL: https://lkml.org/lkml/2014/11/26/674
Новость: http://www.opennet.me/opennews/art.shtml?num=41135
>Сокращено потребление памяти и увеличена эффективность обработки параметров слияния при работы команды "git svn"Нужно!
>Из проектов, разрабатываемых с использованием Git, можно отметить ... SystemdА sysvinit в этом списке нет! У кого-то еще остались сомнения по поводу того, какой инит лучше?
Рано говорить о том, какой лучше: мы ещё не проверили качества клавиатур разработчиков, мониторов, наушников и предпочитаемых ими противозачаточных.
> разработчиков,
>и предпочитаемых ими противозачаточных.Ну, родители-то разработчиков chaosd уже ошиблись. А это тяжёлая наследственность. ]\[
> Git является одной из самых... надёжных:)))
"Первый залетевший дятел способен разрушить цивилизацию": https://www.linux.org.ru/forum/general/10897902
изя цитирует своего собрата по отсутствию мозгов. доки не читай, «-f» пихай, репы просирай!
Изя хотел нам сказать что он дятел и все время залетает и пролетает, не более :).
> "Первый залетевший дятел способенТы-то всё долбишь и долбишь, а
> разрушить цивилизацию":
ей всё равно. Либо само-опроверженец, либо "второй", либо одно из дв^W^Wтрёх.
https://www.linux.org.ru/forum/general/10897902?cid=10897915
Добавил в закладки.
Ну с --force всё понятно. git это больше низкоуровневая библиотека с идеей, что возможности лишними не бывают. Да команды не самые типовые. Но разобраться и работать можно.
Тут вопрос в другом. До того знаменитого выступления Торвальдса фанатов гита особо не было слышно. Больше обсуждались DVCS как таковые, причем сходу даже не всегда можно было понять, что из них перспективнее. Были сравнения туалетов-VCS. Часто жаловались на командный интерфейс гита и все соглашались, что выучить и работать с git будет посложнее.
А после выступления и когда github начал набирать популярность гит вошел мейнстрим.
Есть уйма людей, которые считают, что Линус чуть ли не изобрёл DVCS и не имеющих понятия о наличии других и иногда даже более ранних. А сколько используют его возможности хотя бы на 50%, без того, чтобы не гуглить постоянно команды?
Если же у человека всё заработает, то он не может насладиться масштабами своего осиляторства. Какие команды, какие сложности, да вы просто не умеете его готовить?!
Поэтому когда кто-то выбирает гит, то большая вероятность, что он просто "все побежали и я побежал", не имеет собственного мнения, ну или github :). Хотя достаточно тех кто выбор делает в полной мере осознанно.
Гораздо интереснее узнать почему человек сейчас выбрал другую DVCS. Тут многое можно узнать, в том числе и про гит )
С VCS "все побежали и я побежал" - очень правильный и рациональный подход. Потому что VCS в 99% случаев - это о взаимодействии с другими разработчиками. И различия не настолько велики, чтобы ими нельзя было пожертвовать рди выбора того же инструмента, что и у коллеги.Что касается "Торвальдс изобрёл DVCS" - ну дык Git - это первая свободная (т.е. общедоступная) DVCS, показавшая свою пригодность на реальном крупном проекте.
То есть Mercurial небыло? Тогда интернет изобрёл Биллгёй! :-\
> То есть Mercurial небыло?Они появились одновременно, в общем-то. Так что, можно сказать, что не было.
> Что касается "Торвальдс изобрёл DVCS" - ну дык Git - это первая свободная (т.е. общедоступная) DVCS, показавшая свою пригодность на реальном крупном проекте.Ну, значит Билл Гейтс изобрел компьютер и интернет.
> Есть уйма людей, которые считают, что Линус чуть ли не изобрёл DVCSНайдите себе подходящую ссылку на историю про BitKeeper и подсовывайте таким.
> Гораздо интереснее узнать почему человек сейчас выбрал другую DVCS. Тут многое можно
> узнать, в том числе и про гит )Да уж:
---
> Why do you seem to be pushing subversion?It's because I am. I think the whole hg/git thing is a distraction.
--- wiki.freebsd.org/VCSWhy
> Тут многое можно узнать, в том числе и про гит )в основном про гит узнаётся такое, что единственной подходящей реакцией отказывается фэйспалм. не потому, что в гите что-то не так, а потому, что очередной срыватель покровов… очень неумный. ну, как в топике, на который изя ссылку дал.
ну так не юзай -f и будет тебе безопасно. Вы всегда такие тупые вбросы делаете?
> ну так не юзай -f и будет тебе безопасно. Вы всегда такие
> тупые вбросы делаете?это не вброс. «программисты на похапэ», «программисты на жаве», «программисты на пейтоне» — они действительно так… э… слово «мыслят» тут не очень подходит даже. найдут в интернетах какую-нибудь бякость — и давай её в рот тащить. потому что читать — это многабукаф, а копать надо от стены и до вечера.
Извините но я не верю. Ну не может здравомыслящий человек использовать ключ --force и не понимать что он действует на свой страх и риск, если тоже самое без --force не сработало.
Это ведь программисты, а не секретарши.
> Это ведь программисты, а не секретарши.ну где там по ссылке программист-то? ОП не программист, а тупая макака.
> "Первый залетевший дятел способен разрушить цивилизацию": https://www.linux.org.ru/forum/general/10897902Увольте дятла и наймите программиста.
бгг... это же эталонный овощ:> После этого, чтобы точно убедиться, что изменения синхронизированы, провёл после git fetch (там --bare) на первой машине git push... И увидел странное:
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.> Ну, что, Google в помощь, и первый же совет, который нахожу — воспользоваться ключиком «-f». Не вопрос.
> обновляю ... на другой машине и... вижу, что всех изменений, которые я переносил в эту репу нет.
> Так вот, вопрос ...как вернуть эти измененияДалее чуваку своветуют
> Смотри в сторону git reflog и git reset.
На что он отвечает, к ресету:
> Пустой вывод, ничего не происходит.
Т.е. у чувака совершенно отсутсвутет такой орган как мозг, он тупо копипастит в терминал команды которые находит в инете и на форумах и запускает. Если бы посоветовали сделать rf -rf, то наверняка бы такой чудесный метод тоже был бы незамедлительно опробован.
> Git является одной из самых популярных, надёжных и высокопроизводительных ...Аж зубы сводит :)
Это конечно, не википедия, но всё же стоит более нейтральные фразы были бы уместнее.
Сиди на своем перфорсе и не выеживайся
> одной из самых
>> Git является одной из самых популярных, надёжных и высокопроизводительных ...
> Аж зубы сводит :) Это конечно, не википедия, но всё же стоит более нейтральные фразы
> были бы уместнее.Куда нейтральнее-то? Ну или просветите нас о более производительной и далее по списку.
>Git является одной из самых модных, и рекламирется как самая надёжная и высокопроизводительная DVCS/fixed
>>Git является одной из самых модных, и рекламирется как самая надёжная и высокопроизводительная DVCS
> /fixedЧСХ, редкий случай когда в рекламе не врут.
> Аж зубы сводит :)ты эта.. когда процедуры проходишь капу не забывай, а то закончишь плохо.
> Это конечно, не википедия, но всё же стоит более нейтральные фразы были бы уместнее.
более уместее было бы написать правду, т.е. без всяких заигрываний вроде "является одной из самых".
А что с вашей точки зрения неверно?Что гит является одной из самых популярных vsc ?
Что гит является одной из самых надёжных vsc?
Что гит является одной из самых высокопроизводительных vsc?Говорите пункт который вас не устраивает.)
> А что с вашей точки зрения неверно?
> Что гит является одной из самых популярных vsc ?
> Что гит является одной из самых надёжных vsc?
> Что гит является одной из самых высокопроизводительных vsc?
> Говорите пункт который вас не устраивает.)Git не имеет защиты от дурака.
> Git не имеет защиты от дурака.так не пользуйся.
>> Git не имеет защиты от дурака.
> так не пользуйся.И не собираюсь даже. Мне вас жалко!
>>> Git не имеет защиты от дурака.
>> так не пользуйся.
> И не собираюсь даже.но пердак тебе разрывает так, что не можешь мимо новостей о гите пройти.
>> А что с вашей точки зрения неверно?
>> Что гит является одной из самых популярных vsc ?
>> Что гит является одной из самых надёжных vsc?
>> Что гит является одной из самых высокопроизводительных vsc?
>> Говорите пункт который вас не устраивает.)
> Git не имеет защиты от дурака.Да, от тебя - не имеет.
>> Git не имеет защиты от дурака.
> Да, от тебя - не имеет.Сам не пользуюсь. Факты наступления других на многочисленные грабельки, заботливо разложенные тут и там, немного обозначают границы всемирной глупости.
фанбои Трольвадса готовы хоть над калькулятором фапать, ведь это писал "сам"! :)
Тем не менее, незамороченные люди предпочитают простоту и логичность Hg.
да-да, количество переходящих на git проектов полностью подтверждает твои слова. эка у линуса фанбоев-то развелось…
> git help everydayОтлично ;-)
>> git help everyday
> Отлично ;-)Угу. Много нового узнал! %) [...бы, если б дочитал.]
https://www.kernel.org/pub/software/scm/git/docs/everyday.htmlЗа сим объявляю свой "git - Quickest User Учебник" http:/openforum/vsluhforumID9/7808.html#3 устаревшим.
>http:/openforum/vsluhforumID9/7808.html#3только меня одного эта ссылка перебрасывает на сайт америкен-экспресс 404 page?
>>http:/openforum/vsluhforumID9/7808.html#3
> только меня одного эта ссылка перебрасывает на сайт америкен-экспресс 404 page?видимо, да, потому что лично меня — именно куда указано.
Оказуалили.