Доступен релиз распределенной системы управления исходными текстами Git 1.7.12. Git является одной из самых эффективных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям задним числом используются криптографические методы, также возможна привязка цифровых подписей разработчиков к тегам и коммитам. Из проектов, разрабатываемых с использованием Git, можно отметить ядро Linux, DragonFly BSD, Perl, Eclipse, GNOME, KDE, Qt, Ruby on Rails, Android, PostgreSQL, X.org.
Из изменений можно выделить:
- Пользовательские настройки $HOME/.gitconfig теперь могут сохраняться в $HOME/.config/git/config, также автоматически будут задействованы файлы $HOME/.config/git/attributes и $HOME/.config/git/ignore, при их наличии;
- В команде «git apply» появилась поддержка выполнения трёхступенчатого слияния патча на основании базовой версии, если к текущей версии данный патч неприменим;
- Экспериментальная поддержка «git clone —local $path» для использования ссылок или копий из заданного пути при клонировании репозитория на диск;
- «git rebase [-i] —root $tip» может использоваться для перезаписи всей истории от момента $tip до корневого коммита;
- В «git rebase -i» добавлена поддержка опции «-x cmd» для вставки в историю результата выполнения «exec cmd» после каждого коммита;
- В «git status» улучшена классификация состояний конфликтов;
- В «git submodule» появилась поддержка работы с вложенными субмодулями;
- В contrib-модуле для взаимодействия с mediawiki появилась поддержка вложений;
- Обновлён модуль vcs-svn, в котором устранены проблемы сборки и ограничения при работе на 32-разрядных системах;
- В «git svn» проведена реорганизация операций выборки кода из репозитория, что привело к увеличению скорости работы;
- Проведена оптимизация производительности кода сравнения путей и выполнения команд «git log -n 1 — rarely-touched-path», «git index-pack», «git pack-objects», git am —rebasing».