GIT

Скриншот программы:
GIT
Детали программы:
Версия: 2.16.0 обновление
Дата загрузки: 20 Jan 18
Разработчик: Junio C Hamano
Тип распространения: Бесплатная
Популярность: 64

Rating: 3.0/5 (Total Votes: 1)

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

Это бесплатное приложение с открытым исходным кодом для управления версиями, которое может обрабатывать как крупные, так и небольшие проекты с максимальной эффективностью и скоростью. Программа может быть легко описана как маленькая, быстрая и распределенная.


Параметры командной строки

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

Включенные команды: add, bisect, branch, checkout, clone, commit, diff, fetch, grep, init, log, merge, mv, pull, push, rebase, reset, rm, show, status и tag. Вы можете легко узнать, что делает каждая команда, запустив команду git -help из окна терминала.


Особенности с первого взгляда

При использовании Git пользователи смогут добавлять файлы, контрольные ветви или пути, клонировать репозитории, создавать пустые репозитории Git, объединяться с несколькими историями развития, отображать состояние рабочего дерева, записывать изменения, а также создавать, удалить ветви.

Кроме того, приложение позволяет пользователям просматривать изменения между коммитами и рабочими деревьями, печатать строки, соответствующие шаблону, просматривать журналы фиксации, загружать ссылки и объекты, переименовывать или перемещать файлы, символические ссылки и каталоги, обновлять удаленные ссылки и удалять файлов из рабочего дерева.


Существуют различные графические интерфейсы

Даже если это программное обеспечение с командной строкой, доступны различные графические пользовательские интерфейсы (GUI), включая git-cola, SmartGit, GitEye, хихикать и gitg. Проект превзойдет утилиты SCM (Software Configuration Management), такие как CVS, Subversion, ClearCase и Perforce, благодаря дешевому локальному ветвлению, нескольким рабочим процессам и удобной промежуточной области.


Нижняя линия

Подводя итог, Git - это бесплатная система управления версиями, которая обладает быстродействующей быстротой, ее легко освоить и имеет очень малую площадь. С Git вы можете выполнять трансляцию контекста без трения, ролевые кодовые строки, технологический процесс на основе функций и одноразовые эксперименты.

Что нового в этой версии:

  • Вспомогательная функция для чтения целой строки в strbuf ошибочно вызвала ошибку OOM при EOF при определенных условиях, которая была исправлена.
  • В дополнение к "cc: # cruft", "cc: a@dd.re.ss # cruft" был обучен «git send-email». как действительный способ сказать ему, что ему также необходимо отправить копию с копией в раздел трейлера.
  • Исправить регрессию до "gitk -bisect" по недавнему обновлению.
  • В отличие от git commit-tree & lt; файл & quot ;, "git commit-tree -F file & quot; не передал содержимое файла дословно и вместо этого завершил неполную строку в конце, если существует. Последний был обновлен, чтобы соответствовать поведению первого.
  • "git archive", особенно при использовании с pathspec, хранит пустую директорию в своем выпуске, хотя Git сама по себе этого не делает. Это было исправлено.
  • Проверка ошибок API, которая также вызывает шумоподавление от GCC.
  • & gt; git gc & quot; пытается избежать одновременного запуска двух экземпляров путем чтения и записи pid / host из файла блокировки; он использовал для чтения неправильный формат fscanf (), который был исправлен.
  • Испытуемый linter был изучен, что нам не нравится «echo -e».
  • Код cmp.std.c nitpick.
  • & quot; git describe --match & quot; научился брать несколько шаблонов в серии v2.13, но функция игнорировала шаблоны после первого и вообще не работала. Это было исправлено.
  • & quot; git cat-file -textconv & quot; недавно начался segfault, который был исправлен.
  • Встроенный шаблон для обнаружения "заголовка функции" для HTML не совпадают. Элементы без каких-либо атрибутов, которые были исправлены.
  • & quot; git mailinfo & quot; был свободен в декодировании, цитируемый для печати, и произвел мусор, когда две буквы после знака равенства не являются шестнадцатеричными. Это было исправлено.
  • Документация для «-X» для слияний была введена в заблуждение, чтобы предположить, что «-sss» существует, что не так.
  • Запишите имя нашей системы как «Git». в выводе из скрипта request-pull.
  • Исправления для небольших проблем с доступом к памяти, идентифицированных valgrind.
  • Возвращает моральный эквивалент 2015 года для эмуляции опроса от восходящего гнулиба, чтобы исправить случайные поломки на HPE NonStop.
  • В формате "- format = ... & quot; вариант "git for-each-ref" команду (и ее друзей, то есть режим листинга «ветвь / метка git»), «% (атом:)», (например, «% (refname:)», «% (body:)», используемые для отказа. Вместо этого обрабатывайте их так, как если бы двоеточие и пустая строка, следующие за ним, отсутствовали.
  • Пользователи с "color.ui = always & quot; в их конфигурации были нарушены недавним изменением, которое заставило команды сантехники обратить внимание на них, поскольку исправление, созданное внутренне с помощью «git add -p», были окрашены (хех) и сделаны непригодными для использования. Это было исправлено.
  • "git branch -M a b" в то время как на ветке, которая полностью не связана ни с одной ветвью, ни с веткой b, когда использовалась несколько рабочих строк. Это было исправлено.
  • & quot; git fast-export & quot; с опцией -M / -C, выданной "copy & quot; инструкции на пути, который был одновременно изменен, что было неверно.
  • Команда контрольной точки & quot; git fast-import & quot; не обновлял обновления для ссылок и меток, если по крайней мере один объект был создан с момента последней контрольной точки, которая была исправлена, поскольку эти вещи могут произойти без создания нового объекта.
  • Сценарии для управления TravisCI были реорганизованы, а затем была оптимизирована оптимизация во избежание циклов расходов на ветке, чей отзыв отмечен.
  • & quot; git fetch: & quot; разрешает имя объекта на стороне, когда другая сторона принимает такой запрос с Git v2.5, но документация осталась устаревшей.
  • Исправлена ​​регрессия в 2.11, которая заставляла код читать список хранилищ альтернативных объектов, перекрывающих конец строки.

Что нового в версии 2.15.1:

  • Вспомогательная функция для чтения целой строки в strbuf ошибочно вызвала ошибку OOM при EOF при определенных условиях, которая была исправлена.
  • В дополнение к "cc: # cruft", "cc: a@dd.re.ss # cruft" был обучен «git send-email». как действительный способ сказать ему, что ему также необходимо отправить копию с копией в раздел трейлера.
  • Исправить регрессию до "gitk -bisect" по недавнему обновлению.
  • В отличие от git commit-tree & lt; файл & quot ;, "git commit-tree -F file & quot; не передал содержимое файла дословно и вместо этого завершил неполную строку в конце, если существует. Последний был обновлен, чтобы соответствовать поведению первого.
  • "git archive", особенно при использовании с pathspec, хранит пустую директорию в своем выпуске, хотя Git сама по себе этого не делает. Это было исправлено.
  • Проверка ошибок API, которая также вызывает шумоподавление от GCC.
  • & gt; git gc & quot; пытается избежать одновременного запуска двух экземпляров путем чтения и записи pid / host из файла блокировки; он использовал для чтения неправильный формат fscanf (), который был исправлен.
  • Испытуемый linter был изучен, что нам не нравится «echo -e».
  • Код cmp.std.c nitpick.
  • & quot; git describe --match & quot; научился брать несколько шаблонов в серии v2.13, но функция игнорировала шаблоны после первого и вообще не работала. Это было исправлено.
  • & quot; git cat-file -textconv & quot; недавно начался segfault, который был исправлен.
  • Встроенный шаблон для обнаружения "заголовка функции" для HTML не совпадают. Элементы без каких-либо атрибутов, которые были исправлены.
  • & quot; git mailinfo & quot; был свободен в декодировании, цитируемый для печати, и произвел мусор, когда две буквы после знака равенства не являются шестнадцатеричными. Это было исправлено.
  • Документация для «-X» для слияний была введена в заблуждение, чтобы предположить, что «-sss» существует, что не так.
  • Запишите имя нашей системы как «Git». в выводе из скрипта request-pull.
  • Исправления для небольших проблем с доступом к памяти, идентифицированных valgrind.
  • Возвращает моральный эквивалент 2015 года для эмуляции опроса от восходящего гнулиба, чтобы исправить случайные поломки на HPE NonStop.
  • В формате "- format = ... & quot; вариант "git for-each-ref" команду (и ее друзей, то есть режим листинга «ветвь / метка git»), «% (атом:)», (например, «% (refname:)», «% (body:)», используемые для отказа. Вместо этого обрабатывайте их так, как если бы двоеточие и пустая строка, следующие за ним, отсутствовали.
  • Пользователи с "color.ui = always & quot; в их конфигурации были нарушены недавним изменением, которое заставило команды сантехники обратить внимание на них, поскольку исправление, созданное внутренне с помощью «git add -p», были окрашены (хех) и сделаны непригодными для использования. Это было исправлено.
  • "git branch -M a b" в то время как на ветке, которая полностью не связана ни с одной ветвью, ни с веткой b, когда использовалась несколько рабочих строк. Это было исправлено.
  • & quot; git fast-export & quot; с опцией -M / -C, выданной "copy & quot; инструкции на пути, который был одновременно изменен, что было неверно.
  • Команда контрольной точки & quot; git fast-import & quot; не обновлял обновления для ссылок и меток, если по крайней мере один объект был создан с момента последней контрольной точки, которая была исправлена, поскольку эти вещи могут произойти без создания нового объекта.
  • Сценарии для управления TravisCI были реорганизованы, а затем была оптимизирована оптимизация во избежание циклов расходов на ветке, чей отзыв отмечен.
  • & quot; git fetch: & quot; разрешает имя объекта на стороне, когда другая сторона принимает такой запрос с Git v2.5, но документация осталась устаревшей.
  • Исправлена ​​регрессия в 2.11, которая заставляла код читать список хранилищ альтернативных объектов, перекрывающих конец строки.

Что нового в версии 2.15.0:

  • Вспомогательная функция для чтения целой строки в strbuf ошибочно вызвала ошибку OOM при EOF при определенных условиях, которая была исправлена.
  • В дополнение к "cc: # cruft", "cc: a@dd.re.ss # cruft" был обучен «git send-email». как действительный способ сказать ему, что ему также необходимо отправить копию с копией в раздел трейлера.
  • Исправить регрессию до "gitk -bisect" по недавнему обновлению.
  • В отличие от git commit-tree & lt; файл & quot ;, "git commit-tree -F file & quot; не передал содержимое файла дословно и вместо этого завершил неполную строку в конце, если существует. Последний был обновлен, чтобы соответствовать поведению первого.
  • "git archive", особенно при использовании с pathspec, хранит пустую директорию в своем выпуске, хотя Git сама по себе этого не делает. Это было исправлено.
  • Проверка ошибок API, которая также вызывает шумоподавление от GCC.
  • & gt; git gc & quot; пытается избежать одновременного запуска двух экземпляров путем чтения и записи pid / host из файла блокировки; он использовал для чтения неправильный формат fscanf (), который был исправлен.
  • Испытуемый linter был изучен, что нам не нравится «echo -e».
  • Код cmp.std.c nitpick.
  • & quot; git describe --match & quot; научился брать несколько шаблонов в серии v2.13, но функция игнорировала шаблоны после первого и вообще не работала. Это было исправлено.
  • & quot; git cat-file -textconv & quot; недавно начался segfault, который был исправлен.
  • Встроенный шаблон для обнаружения "заголовка функции" для HTML не совпадают. Элементы без каких-либо атрибутов, которые были исправлены.
  • & quot; git mailinfo & quot; был свободен в декодировании, цитируемый для печати, и произвел мусор, когда две буквы после знака равенства не являются шестнадцатеричными. Это было исправлено.
  • Документация для «-X» для слияний была введена в заблуждение, чтобы предположить, что «-sss» существует, что не так.
  • Запишите имя нашей системы как «Git». в выводе из скрипта request-pull.
  • Исправления для небольших проблем с доступом к памяти, идентифицированных valgrind.
  • Возвращает моральный эквивалент 2015 года для эмуляции опроса от восходящего гнулиба, чтобы исправить случайные поломки на HPE NonStop.
  • В формате "- format = ... & quot; вариант "git for-each-ref" команду (и ее друзей, то есть режим листинга «ветвь / метка git»), «% (атом:)», (например, «% (refname:)», «% (body:)», используемые для отказа. Вместо этого обрабатывайте их так, как если бы двоеточие и пустая строка, следующие за ним, отсутствовали.
  • Пользователи с "color.ui = always & quot; в их конфигурации были нарушены недавним изменением, которое заставило команды сантехники обратить внимание на них, поскольку исправление, созданное внутренне с помощью «git add -p», были окрашены (хех) и сделаны непригодными для использования. Это было исправлено.
  • "git branch -M a b" в то время как на ветке, которая полностью не связана ни с одной ветвью, ни с веткой b, когда использовалась несколько рабочих строк. Это было исправлено.
  • & quot; git fast-export & quot; с опцией -M / -C, выданной "copy & quot; инструкции на пути, который был одновременно изменен, что было неверно.
  • Команда контрольной точки & quot; git fast-import & quot; не обновлял обновления для ссылок и меток, если по крайней мере один объект был создан с момента последней контрольной точки, которая была исправлена, поскольку эти вещи могут произойти без создания нового объекта.
  • Сценарии для управления TravisCI были реорганизованы, а затем была оптимизирована оптимизация во избежание циклов расходов на ветке, чей отзыв отмечен.
  • & quot; git fetch: & quot; разрешает имя объекта на стороне, когда другая сторона принимает такой запрос с Git v2.5, но документация осталась устаревшей.
  • Исправлена ​​регрессия в 2.11, которая заставляла код читать список хранилищ альтернативных объектов, перекрывающих конец строки.

Что нового в версии 2.14.1:

  • Этот выпуск пересылает исправление для & quot; SSH: //..." URL из Git v2.7.6

Что нового в версии 2.9.3:

  • * Вспомогательная функция, которая принимает содержимое объекта фиксации и находит, что его строка темы не игнорирует ведущие пустые строки, как это обычно делают другие кодировки. Заставьте игнорировать ведущие пустые строки, чтобы они соответствовали.
  • Git не знает, что должно содержать содержание в индексе для пути, добавленного с помощью git add -N, поэтому «git grep --cached» не должен показывать хиты (или показывать отсутствие обращений, используя -L ) в таком пути, но эта логика не относится к «git grep», то есть к поиску в рабочих файлах дерева. Но мы сделали это по ошибке, что было исправлено.
  • «git rebase -i -autostash» не восстановил автоматическое спряжение, когда операция была прервана.
  • "git commit --amend --allow-empty-message -S" для фиксации без какого-либо тела сообщения может быть неверно идентифицировано, где заканчивается заголовок объекта commit.
  • Дополнительные обновления для строковых строк, которые, как ожидается, будут буквально введены конечным пользователем шрифтом с фиксированной шириной.
  • В течение долгого времени мы оставили комментарий в коде, в котором говорилось, что наш цветной вывод будет работать только тогда, когда мы используем fprintf / fputs в Windows, что больше не имеет отношения к последним годам.
  • «gc.autoPackLimit», если установлен в 1, не должен запускать переупаковку, когда есть только один пакет, но код плохо подсчитан и сделал это.
  • Одна часть «git am» имела функцию вспомогательного помощника, которая называла материал снаружи «его», а не называя то, что у нас есть «наше», которое не было нейтральным по гендерному признаку, а также противоречило с остальной системой, внешний материал обычно называется «их» в отличие от «наших».
  • В рамках тестовой среды был обнаружен новый хелпер test_match_signal, чтобы проверить код выхода из-за того, что он был убит ожидаемым сигналом.
  • «git blame -M» пропустил одну строку, перемещенную внутри файла.
  • Исправить недавно введенные кодеки, которые участвуют в параллельных операциях подмодуля, которые слишком рано сдались, и могли потратить впустую CPU при попытке записать в условиях углового случая.
  • «git grep -i» научился правильно складывать футляр в неасциевых локалях.
  • Тест, который безоговорочно использовал «mktemp», узнал, что команда не всегда доступна везде.
  • «файл git-вины» разрешал линию строк в незафиксированном, незакрепленном содержимом «файла» для проверки, но он отказался, когда «файл» не появился в текущей фиксации. Когда «файл» был создан путем переименования существующего файла (но изменение не было выполнено), это ограничение было излишне жестким.
  • "git add -N dir / file & amp; & amp; git write-tree" выдает неправильное дерево, если в том же каталоге, который сортирует после "файла", есть другие пути.
  • «git fetch http: // user: pass @ host / repo ...» очистил часть userinfo, но «git push» не сделал.
  • Исправлена ​​старая ошибка, которая вызвала ошибку git diff -ignore-space-at-eol.
  • «git notes merge» имеет код, чтобы узнать, существует ли путь (и сбой, если он есть), а затем открыть путь для записи (когда это не так). Замените его открытым с помощью O_EXCL.
  • «git pack-objects» и «git index-pack» в основном работают с off_t, когда говорят о смещении объектов в файле packfile, но было несколько мест, которые использовали «unsigned long» для хранения этого значения, к непреднамеренному усечению.
  • Последнее обновление до «git daemon» пытается включить KEEPALIVE на уровне сокета, но когда оно порождено через inetd, стандартный дескриптор входного файла может не обязательно быть подключен к сокету. Подавить ошибку ENOTSOCK от setsockopt ().
  • Недавняя FreeBSD прекратила создание perl в / usr / bin / perl; переключите по умолчанию встроенный путь на / usr / local / bin / perl на не слишком древние версии FreeBSD.
  • «git status» научился предлагать «merge -abort» во время конфликта слияния, так же, как он уже предлагает «rebase -abort» во время конфликтной rebase.
  • Источники .c / .h помечены как таковые в нашем файле .gitattributes, так что «git diff -W» и друзья будут работать лучше.
  • Существующий тест autoconf, связанный с необходимостью связывания с библиотекой pthread, не проверял все функции из библиотек pthread; недавно FreeBSD имеет некоторые функции в libc, но не другие, и мы ошибочно думали, что связь с libc достаточно, когда это не так.
  • Разрешить тесты http-демон в тестах Travis CI.
  • Пользователям функции parse_options_concat () API необходимо заранее выделить дополнительные слоты и заполнить их OPT_END (), когда они хотят динамически определять набор поддерживаемых опций, что делает код уязвимым и трудно читаемым. Это было исправлено путем настройки API для выделения и возврата новой копии массива «struct option».
  • Использование strbuf в «git rm» для сборки имени файла для удаления было немного субоптимально, что было исправлено.
  • «git commit -help» сказал, что «-no-verify» означает только пропустить крюк предварительной фиксации и не смог сказать, что он также пропустил hook-commit-msg.
  • «git merge» в Git v2.9 учили запрещать слияние несвязанных строк истории по умолчанию, но это как раз то, что режим «-rejoin» «поддерева git» (в contrib /) хочет сделать. «git subtree» было обучено использовать параметр «-allow-unrelated-history», чтобы переопределить значение по умолчанию.
  • Процедура сборки для помощника «git persistent-https» (в contrib /) была обновлена, так что она может быть построена с более поздними версиями Go.
  • Существует оптимизация, используемая в «git diff $ treeA $ treeB» для заимствования уже вывернутой копии в рабочем дереве, когда она, как известно, совпадает с сравниваемой blob, ожидая, что open / mmap такого файл быстрее, чем чтение его из хранилища объектов, что предполагает раздувание и применение дельта. Это, однако, ногами, даже когда проверенная копия должна пройти преобразование конвертирования в git (включая чистый фильтр), что наносит ущерб всей точке оптимизации. Оптимизация была отключена, когда требуется преобразование.
  • "git -c grep.patternType = extended log --basic-regexp" ошибочно, потому что внутренний API для доступа к машинам grep не был хорошо разработан.
  • Порт Windows терпел неудачу в некоторых тестах в t4130 из-за отсутствия inum в возвращаемых значениях его эмуляцией lstat (2).
  • Символы на этикетке, показанной для тегов / refs для коммитов в выводе «gitweb», теперь правильно экранированы для правильного вывода HTML.
  • FreeBSD может лежать при запросе mtime каталога, в результате чего код необработанного кэша возвращается к медленному пути, что, в свою очередь, приводило к сбою тестов в t7063, потому что он хотел проверить поведение быстрого пути.
  • Предупреждения компилятора Squelch для библиотеки netmalloc (в совместимости /).
  • Документация API для hashmap неясно, можно ли безопасно удалить hashmap_entry без какого-либо другого рассмотрения. Укажите, что это безопасно.
  • Не так недавно переписанный «git am», который начал делать внутренние вызовы в механизм коммитов, имел непреднамеренную регрессию, поскольку независимо от того, сколько секунд потребовалось применить много патчей, полученная в результате метка времени для итоговых коммитов были все те же.
  • «git difftool ...», запущенный в подкаталоге, не смог интерпретировать пути относительно этого каталога, который был исправлен.

Что нового в версии 2.9.1:

  • Когда «git daemon» запускается без - [init-] тайм-аута, соединение с клиентом, который тихо переходит в автономный режим, может долгое время находиться в сети, тратя ресурсы. KEEPALIVE на уровне сокетов был включен, чтобы позволить ОС замечать такие неудавшиеся подключения.
  • Команды в семействе `git log` принимают% C (auto) в строке пользовательского формата. Это безоговорочно включило цвет, игнорируя --no-color или с --color = auto, когда выход не подключен к tty; это было исправлено, чтобы формат действительно вел себя как «авто».
  • «git rev-list --count», длина которого ограничена опцией «-n», не очень хорошо работает с подсчетом, оптимизированным для просмотра индекса растрового изображения.
  • «git show -W» (расширьте ханки, чтобы покрыть всю функцию, ограниченную строками, которые соответствуют шаблону «funcname»), используемые для отображения всего файла, когда изменение добавило целую функцию в конце файла, что был исправлен.
  • Обновлен набор документации, так что буквенные команды, переменные конфигурации и переменные окружения последовательно набираются шрифтом фиксированной ширины и полужирным шрифтом в manpages.

  • Подкоманда
  • "git svn propset", добавленная за 2.3 дня, задокументирована.
  • Документация пытается последовательно называть «GPG»; при обращении к конкретному имени программы используется «gpg».
  • «git reflog» остановился, увидев запись, обозначающую событие создания ветки (иначе говоря, «нерожденное»), которое показало, что reflog был усечен.
  • Сценарий скрипта git-prompt (в contrib /) не был дружественным с теми, кто использует исправление «set -u».
  • Кодовая страница, которая использовала alloca (3) для размещения неограниченного количества данных в стеке, была обновлена, чтобы избежать этого.
  • "git update-index --add --chmod = + x file" может использоваться как побег-люк, но не дружественная вещь, чтобы заставить людей, которые действительно должны использовать их регулярно. Вместо этого можно использовать «git add -chmod = + x file».
  • Улучшение сборки gnome-keyring (в contrib /)
  • «git status» используется, чтобы сказать «рабочий каталог», когда это означало «рабочее дерево».
  • Комментарии о неправильном использовании оболочек FreeBSD были уточнены с номером версии (9.x и раньше были сломаны, более новые - в порядке).
  • «git cherry-pick A» работал на неродившейся ветке, но «git cherry-pick A..B» не сделал.
  • «git add -i / -p» научился оценивать diff.compactionHeuristic экспериментальную ручку, чтобы пользователь мог работать с одним и тем же разделом hunk как выход «git diff».
  • "log -graph --format =" узнал, что "% & gt; | (N)" указывает ширину относительно левого края терминала, а не относительно области для рисования текста, который находится справа от предка -граф. Он также теперь принимает отрицательный N, что означает, что предел столбца относительно правой границы.
  • Правило владения для части памяти, в которой хранятся ссылки, которые будут загружены в «git fetch», было отвратительным, которое было очищено.
  • «git bisect» делает внутренний вызов «git diff-tree», когда биссекция находит виновника, но этот вызов не инициализировал структуру данных, чтобы передать API-интерфейс diff-дерева правильно.
  • Задокументированы форматы различных данных (и как их проверить), в которых мы используем подпись GPG.
  • Исправить непреднамеренную регрессию в версии 2.9, которая разбивает «clone -depth», которая возвращается к подмодулям, заставляя подмодули также клонироваться неглубоко, что многие серверные экземпляры, которые размещают выше субмодулей, не подготовлены для.
  • Исправить ненужное обращение в идиоматическом использовании ': $ {VAR = default}', чтобы установить значение по умолчанию, не заключая его в двойные кавычки.
  • В некоторых кодах, специфичных для платформы, были строгие объявления ANSI с строгими декларациями функций C, которые не принимают никаких параметров, которые были исправлены.
  • Внутренний код, используемый для отображения локального смещения часового пояса, не готов обрабатывать отметки времени за пределами 2100 года и присваивает вызывающему абоненту значение фальшивого смещения. Используйте вместо этого более мягкий вид +0000 и пусть «git log» будет в таком случае, а не прерывается.
  • Один из четырех вызовов readlink (1) в нашем тестовом наборе был переписан так, что тест может выполняться в системах без команды (другие находятся в платформе тестирования valgrind и t9802).
  • t / perf требует / usr / bin / time с расширением GNU; вызов его обновляется до «gtime» в Дарвине.
  • Исправлена ​​ошибка, которая вызвала «git p4» при запуске в режиме подробного сообщения, чтобы сообщить о путях, которые были опущены из-за неверного префикса ветки; команда «Игнорирование файла за пределами префикса» для путей, которые _inside _.
  • Документация верхнего уровня «git help git» по-прежнему указывает на набор документации, размещенный в ныне существующем репозитории google-кода. Обновите его, чтобы указать вместо https://git.github.io/htmldocs/git.html.

Что нового в версии 2.9.0:



Новое в GIT 2.8.1 (5 апреля 2016 года)

Что нового в версии 2.8.1:

  • «make rpmbuild» была нарушена, так как ее вход git.spec.in не обновлялся, чтобы соответствовать файлу, который он описывает, который был недавно переименован. Это было исправлено.

Что нового в версии 2.7.3:

  • Традиционно тесты, которые используют команды, которые работают с содержимым рабочего дерева, называются «worktree» в своих именах файлов, но с недавней добавкой подкоманды «git worktree», чьи тесты также называются аналогично, она имеет становится сложнее рассказать им обособленно. Традиционные тесты были переименованы, чтобы вместо этого использовать «дерево работы», чтобы их отличить.
  • Многие кодеки забывают проверить возвращаемое значение из git_config_set (); функция выполняется для die (), чтобы убедиться, что мы не продолжаем, когда настройка параметра конфигурации не удалась.
  • Обработка ошибок при записи в наш внутренний асинхронный процесс была сделана более надежной, что уменьшает flakiness в наших тестах.
  • «git show» HEAD: Foo [BAR] Baz '' не интерпретировал аргумент как rev, т. е. объект, названный именем пути с подстановочными символами в древовидном объекте.
  • "git rev-parse --git-common-dir", используемый в функции worktree, плохо выполняемый при запуске из подкаталога.
  • Подкоманда «v (iew)» интерактивной команды «git am -i» была нарушена в 2.6.0 таймфрейме, когда команда была перезаписана в C.
  • «git merge-tree», используемое для неправильного использования «обе стороны добавили« конфликт с собственным », создают файл поддельного предка, который имеет общие части того, что добавили обе стороны, и выполняет логику с 3-сторонним слиянием; это было обновлено, чтобы использовать обычное «трехстороннее слияние с пустым блобом как поддельный общий файл предка», используемый в остальной системе.
  • Правило владения памятью API fill_textconv (), которое было немного сложнее, было документировано немного лучше.
  • В документации явно не указано, что «простой» режим по умолчанию используется для «git push», когда конфигурация push.default не установлена.
  • Последние версии GNU grep являются более строгими, когда их ввод содержит произвольные двоичные данные, которые используются в некоторых наших тестах. Перепишите тесты, чтобы обойти проблему.
  • Вспомогательная функция «git submodule» использует, поскольку v2.7.0 для перечисления модулей, которые соответствуют аргументу pathspec, указанному в его подкомандах (например, «subodule add»), исправлено.
  • «git config section.var value», чтобы установить значение в файле конфигурации для каждого репозитория, не удалось, когда он был запущен за пределами какого-либо репозитория, но неправильно сказал причину.
  • Код для чтения данных пакета с использованием смещений, сохраненных в файле idx pack, был более тщательно проверен на достоверность данных в idx.

Что нового в версии 2.7.2:

  • На слиянии с низкоуровневым оборудованием было показано использование терминации линии CRLF при вставке маркеров конфликта в объединенное содержимое, которые сами по себе линируются на линии CRLF.
  • «git worktree» имел сломанный код, который пытался автоматически исправить возможную несогласованность, которая возникает из-за того, что конечные пользователи перемещают рабочую среду в разные места, не сообщая Git (исходный репозиторий должен поддерживать backpointers на своих рабочих деревьях, но «mv» управляемые конечными пользователями, которые не знакомы с этим фактом, очевидно, не будут их корректировать), что фактически ухудшило ситуацию при запуске.
  • «git push -force-with-lease» учили сообщать, нужно ли нажать, чтобы заставить (или переадресовать).
  • Эмулированная команда «да», используемая в наших тестовых сценариях, была изменена, чтобы не тратить слишком много времени на создание ненужного вывода, который не используется, чтобы помочь тем, кто тестирует в Windows, где он не остановится, пока он не заполнит буфер буфера из-за к отсутствию SIGPIPE.
  • Бэкэнда vimdiff для «git mergetool» была настроена так, чтобы упорядочивать и индексировать буферы в порядке, который соответствовал ожиданию большинства людей, читающих слева направо, затем сверху вниз и назначать буферы 1 2 3 4 «мысленно», на локальные базы удаленных слияния окон на основе этого порядка.
  • Исправлена ​​документация для «git clean»; он упомянул, что .git / modules / * удаляются с помощью двух «-f», чего никогда не было.
  • Пути, которые были проиндексированы с индексом «add -N», еще не указаны в индексе, но несколько команд ведут себя так, как будто они уже вредны.
  • Также включает крошечную документацию и тестовые обновления.

Что нового в версии 2.6.4:

  • Скрипт «configure» не проверял корректность -lpthread, что расстраивало некоторые линкеры.
  • Добавить поддержку для разговора http / https через прокси-сервер socks.
  • Исправление переносимости для Windows, которое может переписать переменную $ SHELL с использованием путей, отличных от POSIX.
  • Теперь мы постоянно позволяем всем крючкам игнорировать их стандартный ввод, а не git жаловаться на SIGPIPE.
  • Исправить кавычки оболочки в скрипте contrib.
  • Проверка переносимости переносимости темы для v2.6.1.
  • Разрешить расширение тильды в некоторых конфигурациях http config.
  • Дайте полезный специальный случай «diff / show -word-diff-regex =.» в качестве примера в документации.
  • Исправьте угловой регистр в ветви фильтра.
  • Сделайте git-p4 на отдельной голове.
  • Прояснение документации для «check-ignore» без «--verbose».
  • Так же, как рабочее дерево очищается, когда пользователь отменяет подачу в P4Submit.applyCommit (), очищайте беспорядок, если «p4 submit» терпит неудачу.
  • Наличие остаточного файла .idx без соответствующего .pack-файла в репозитории ухудшает производительность; «git gc» научились обрезать их.
  • Код для подготовки стороны рабочего дерева временного каталога для функции «dir-diff» забыл, что символические ссылки не нужно копировать (или символизировать) во временную область, так как код уже имеет особые случаи и перезаписывает их. Кроме того, было неправильно пытаться вычислить имя объекта цели символической ссылки, которая может даже не существовать или может быть каталогом.
  • Не удалось запустить сконфигурированную переменную rebase.autostash из командной строки, так как отсутствовала «git rebase -no-autostash».
  • Разрешить «git interp-trailers» запускать за пределами репозитория Git.
  • Произведите правильный «грязный» маркер для подсказок оболочки, даже если мы находимся на сироте или неродившейся ветке.
  • Некоторые угловые случаи были исправлены при сопоставлении строк в «git status».
  • Общая криптоэкранная реализация SHA1_Update () Apple не занимает больше 4 ГБ за один раз, и теперь у нас есть временное решение для компиляции.

Что нового в версии 2.5.3:

  • Экспериментальная функция отсутствия следов кэширования была ошибочной, когда задействованы пути с несколькими уровнями подкаталогов.
  • В последних версиях сценария «git am» есть регрессия производительности в кодеке «git am -skip», которая больше не существует во встроенной версии на «главном» фронте. Исправьте регрессию в последней версии скрипта, которая появляется в треке обслуживания 2.5.x и старше.

Что нового в версии 2.4.6:

  • "git fetch --depth =" и "git clone --depth =" выдает мелкий запрос на передачу даже в пакет загрузки, который не поддерживает эту возможность.
  • «git fsck» используется для игнорирования отсутствующих или недопустимых объектов, записанных в reflog.
  • Завершение tcsh записывает скрипт bash bash, но это не сработало бы для пользователей с набором noclobber.
  • Недавние обновления для Mac OS X ломают логику, чтобы обнаружить, что компьютер находится в сети переменного тока в образце сценария pre-auto-gc.
  • «git format-patch --ignore-if-upstream A..B» не понравилось, чтобы теги были загружены по мере того, как граница коммитов.
  • Также содержит typofixes, обновления документации и тривиальный код
  • чистые окна.

Что нового в версии 2.4.2:

  • "git rev-list --объекты $ old --not --all", чтобы увидеть, было ли все, доступное из $ old уже подключено к существующим refs, было очень неэффективно.
  • «hash-object --literally», введенный в v2.2, не был подготовлен к тому, чтобы иметь действительно длинное имя типа объекта.
  • «git rebase -quiet» не совсем тихий, когда делать нечего.
  • Значение параметра "log -decorate =" не выполнено.
  • «фильтр-ветвь» - поврежденное сообщение журнала фиксации, заканчивающееся неполной строкой на платформах с некоторыми реализациями «sed», которые выполняют такую ​​линию. Работайте вокруг, избегая использования «sed».
  • «git daemon» не удается построить из источника в конфигурации NO_IPV6 (регрессия в 2.4).
  • «git stash pop / apply» забыли убедиться, что не только рабочее дерево чиста, но и индекс чист. Последнее важно, поскольку приложение-штемпель может конфликтовать, и индекс будет использоваться для разрешения конфликтов.
  • Мы добавили $ GIT_EXEC_PATH, а путь «git» установлен (обычно «/ usr / bin») на $ PATH при вызове подпрограмм и перехватов почти вечность, но исходный прецедент, который последний пытался поддерживать, был полу -bogus (т. е. установите git в / opt / foo / git и запустите его, не имея / opt / foo на $ PATH), и что более важно, оно становится все менее и менее актуальным, поскольку Git становится более популярным (т.е. пользователи будут _want_ иметь это на их $ PATH). Остановите добавление пути, в котором «git» устанавливается в $ PATH пользователей, так как это будет мешать людям, зависящим от порядка поиска команд (например, им могут не нравиться версии программ, которые не связаны с Git в / usr / bin и хотят переопределить их, имея разные в / usr / local / bin и иметь последний каталог раньше в их $ PATH).
  • Также содержит типовые символы, обновления документации и тривиальные очищения кода.

Похожие программы

Mercurial
Mercurial

22 Jun 18

raw-import
raw-import

14 Apr 15

Apache Subversion
Apache Subversion

16 Aug 18

reposurgeon
reposurgeon

17 Feb 15

Комментарии к GIT

Комментарии не найдены
добавить комментарий
Включите картинки!