The OpenNET Project / Index page

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

Выпуск распределенной системы управления исходными текстами Git 2.3.0

06.02.2015 10:36

Представлен релиз распределенной системы управления исходными текстами Git 2.3.0. Git является одной из самых популярных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям задним числом используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов. Из проектов, разрабатываемых с использованием Git, можно отметить ядро Linux, Android, LibreOffice, Systemd, X.Org, Wayland, Mesa, Gstreamer, Wine, Debian, DragonFly BSD, Perl, Eclipse, GNOME, KDE, Qt, Ruby on Rails, PostgreSQL, VideoLAN, PHP, Xen, Minix.

По сравнению с прошлым выпуском в новую версию принято 255 изменений, подготовленных при участии 61 разработчика, из которых 19 впервые приняли своё участие в разработке. В новом выпуске представлены в основном исправления ошибок и мелкие улучшения, значительные изменения отсутствуют. Основные изменения:

  • Внесены исправления, позволяющие собрать git на платформах без поддержки tv_nsec, clock_gettime, CLOCK_MONOTONIC и HMAC_CTX_cleanup, например, в старых выпусках RHEL;
  • Для упрощения передачи дополнительных аргументов в ssh добавлена переменная окружения GIT_SSH_COMMAND. Например, для использования иных параметров идентификации для пределённых git-репозиториев можно выполнить "GIT_SSH_COMMAND='ssh -i git_id' git clone host:repo.git";
  • Для развёртывания обновлённой версии проекта некоторые web-разработчики используют "git pull" на сервере для получения рабочей копии. В Git 2.3 появилась возможность инициирования подобного развёртывания командой "git push" для прямой передачи изменений в репозиторий на сервере. Метод работает только при выполнении "git push" на рабочем дереве, не содержащем локальных изменений, например, может использоваться для развёртывания статических и не меняющихся файлов. При использовании метода на web-сервере следует учитывать необходимость ограничения доступа к директории .git и последовательный характер обновления данных (файлы меняются не единовременно). Для включения опции следует для репозитория выполнить команду "git config receive.denyCurrentBranch updateInstead";
  • Незаполненное примечание при выполнении команды "git notes" теперь приводит к удалению примечания из объекта. Для добавления пустого примечания следует использовать опцию "--allow-empty";
  • В "git clone --reference=путь к локальному клону" добавлена опция "--dissociate" для получения объектов клонирования из эталонного локального хранилища, что позволяет уменьшить число передаваемых по сети данных за счёт копирования из внешнего репозитория только изменённых и новых объектов (вместо копирования объектов из внешнего репозитория можно использовать данные из ранее сделанной локальной копии клонируемого репозитория);
  • В "git interpret-trailers" добавлена возможность обработки блоков "Conflicts:" в конце текста;
  • В "git am" появилась опция "--message-id" для копирования в лог коммита идентификатора сообщения, полученного по электронной почте;
  • В "git send-email" добавлена опция "--transfer-encoding" для принудительного указания значения заголовка Content-Transfer-Encoding (например, base64);
  • Сообщения, отправленные через "git send-email", теперь идентифицируются при помощи заголовка X-Mailer. Для отмены установки заголовка следует использовать опцию "--no-xmailer";
  • В contrib добавлена команда "git new-workdir", которую можно использовать для заполнения пустого или существующего каталога;
  • В интерфейс обработчиков учётных данных добавлена возможность досрочного завершения проверки, без вызова других обработчиков в цепочке. Также стало возможно отключить встроенное приглашение ввода пароля посредством установки переменной окружения GIT_TERMINAL_PROMPT=false;
  • В "git branch -d" (удалить) и "git branch -m" (переместить) добавлена опция "-f" для принудительного выполнения операции (в дополнение к -D/-M);
  • В contrib добавлен фильтр "diff-highlight", позволяющий настроить на свой вкус подсветку вывода;
  • В "git imap-send" добавлены опции "-v" (verbose) и "-q" (quiet);
  • Стало возможным указание команды "git remote add $name $URL", если $URL определён через "url.$URL.insteadOf";
  • Реализация команды "git imap-send" теперь может быть собрана с библиотекой cURL для соединения с IMAP при помощи методов аутентификации, отличных от CRAM-MD5.


  1. Главная ссылка к новости (https://lkml.org/lkml/2015/2/5...)
  2. OpenNews: В рамках проекта Gitlet развивается упрощённая реализация Git на JavaScript
  3. OpenNews: Выпуск распределенной системы управления исходными текстами Git 2.2.0
  4. OpenNews: Релиз распределенной системы управления исходными текстами Git 2.1.0
  5. OpenNews: Выпуск Seafile 3.1, Dropbox-подобного сервера хранения на основе технологий Git
  6. OpenNews: Релиз распределенной системы управления исходными текстами Git 2.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/41618-git
Ключевые слова: git
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (10) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, anonymous (??), 12:27, 06/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > В "git branch -d" (удалить) и "git branch -m" (переместить) добавлена опция "-f" для принудительного выполнения операции;

    Вместо -D, -M?

     
     
  • 2.4, anonymous (??), 12:34, 06/02/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Вместе.
    P.S. тот же аноним. Но прочитал RelNotes.
     

  • 1.2, Totktonada (ok), 12:31, 06/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Еще есть интересный анонс на GitHub’е ( https://github.com/blog/1957-git-2-3-has-been-released ), даже с переводом ( http://habrahabr.ru/post/249857/ ).
     
  • 1.6, Аноним (-), 16:35, 06/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > переменная окружения GIT_SSH_COMMAND

    Я ДЖВА ГОДА ЖДАЛ!!! Наконец то теперь можно будет авторизоваться в разных репах разными ключами без феерических костылей.

     
     
  • 2.7, Andrey Mitrofanov (?), 18:00, 06/02/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > репах разными ключами без феерических костылей.

    Ой, man ssh -M ? Если не man ssh_config re: IdentityFile (И да, я проверил: IdentityFile в host в .ssh/config проверяется перед "глобальными" id_rsa и ко.).

     
     
  • 3.8, Andrey Mitrofanov (?), 18:06, 06/02/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> репах разными ключами без феерических костылей.
    > Ой, man

    Но, да, согласен! Я потерял "джва года" сладкого ожидания, запилив

    GIT_SSH=/путь/к/тому/врапер-c-exec-usr-bin-ssh-со-всеми-ключами у git fetch secure.server

     
     
  • 4.13, Crazy Alex (ok), 02:58, 08/02/2015 [^] [^^] [^^^] [ответить]  
  • +/
    И идиоты голову не включают. Только ждут джва года.
     
     
  • 5.14, Andrey Mitrofanov (?), 11:51, 09/02/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > И идиоты голову не включают. Только ждут джва года.

    Не, просто мой сарказм крепче. :->

     
  • 3.12, Crazy Alex (ok), 02:57, 08/02/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну так идиоты мануалы не читают
     

  • 1.9, ALex_hha (ok), 22:57, 06/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    > Я ДЖВА ГОДА ЖДАЛ!!! Наконец то теперь можно будет авторизоваться в разных репах разными ключами без феерических костылей.

    man ssh таки не асилил, пичаль

    ~/.ssh/config:
    Host project1.github.com
        HostName github.com
        PreferredAuthentications publickey
        IdentityFile /path/to/key1

    Host project2.github.com
        HostName github.com
        PreferredAuthentications publickey
        IdentityFile /path/to/key2


    $ git clone git@project1.github.com:repo1
    $ git clone git@project2.github.com:repo2

     

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



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

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