Скотт Чакон - Pro Git

Тут можно читать онлайн Скотт Чакон - Pro Git - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Pro Git
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    неизвестен
  • ISBN:
    нет данных
  • Рейтинг:
    3/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Скотт Чакон - Pro Git краткое содержание

Pro Git - описание и краткое содержание, автор Скотт Чакон, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.
В книге рассматриваются следующие темы: основы Git;
ветвление в Git;
Git на сервере;
распределённый Git;
GitHub;
инструменты Git;
настройка Git;
Git и другие системы контроля версий.

Pro Git - читать онлайн бесплатно полную версию (весь текст целиком)

Pro Git - читать книгу онлайн бесплатно, автор Скотт Чакон
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Пути к файлам

Эти переменные влияют на то, как Git будет понимать пути к файлам и шаблоны путей. Эти настройки применяются к записям в файлах .gitignore и к путям, переданным в командной строке (git add *.c).

GIT_GLOB_PATHSPECS и GIT_NOGLOB_PATHSPECSуправляют поведением шаблонов путей к файлам. Если переменная GIT_GLOB_PATHSPECS установлена в 1, то специальные символы интерпретируются стандартным для шаблонов способом; если же GIT_NOGLOB_PATHSPECS установлена в 1, то специальные символы обрабатываются буквально, это означает, что, например, запись *.c будет обозначать лишь единственный файл с именем "*.c", а не все файлы с расширением ".c". Это поведение можно переопределить в каждом конкретном случае, приписывая к путям строки :(glob) или :(literal), например :(glob)*.c.

GIT_LITERAL_PATHSPECSотключает шаблоны в путях: ни специальные символы, ни специальные префиксы не будут работать.

GIT_ICASE_PATHSPECSделает все пути регистронезависимыми.

Фиксация изменений

Окончательное создание объекта-коммита обычно производится командой git-commit-tree, которая использует приведённые ниже переменные окружения в качестве источника информации. И лишь в случае, если эти переменные не заданы, она будет использовать данные из файлов конфигурации.

GIT_AUTHOR_NAMEиспользуется для указания автора коммита.

GIT_AUTHOR_EMAILзадаёт адрес электронной почты автора коммита.

GIT_AUTHOR_DATEвремя создания коммита.

GIT_COMMITTER_NAMEиспользуется для указания человека, применившего коммит.

GIT_COMMITTER_EMAILзадаёт адрес электронной почты человека, применившего коммит.

GIT_COMMITTER_DATEвремя применения коммита.

EMAILиспользуется, как запасное значение, если конфигурационный параметр user.email не задан. Если же и эта переменная не задана, Git будет использовать идентификатор пользователя в системе и имя хоста.

Работа с сетью

Git использует библиотеку curl для работы с сетью через HTTP. Задание переменной GIT_CURL_VERBOSEуказывает Git выводить все сообщения, генерируемые этой библиотекой. Это похоже на использование curl с флагом -v в командной строке.

GIT_SSL_NO_VERIFYотключает проверку SSL сертификатов. Это может пригодиться если вы используете самоподписанные сертификаты для работы репозиториев через HTTPS, или если вы настраиваете Git сервер и ещё не установили необходимые сертификаты.

Если на протяжении более чем GIT_HTTP_LOW_SPEED_TIMEсекунд скорость передачи данных не поднималась выше GIT_HTTP_LOW_SPEED_LIMITбайт в секунду, Git прервёт операцию. Эти переменные замещают значения конфигурационных параметров http.lowSpeedLimit и http.lowSpeedTime.

GIT_HTTP_USER_AGENTзадаёт заголовок User-Agent при работе через HTTP. По умолчанию используется что-то вроде git/2.0.0.

Сравнение файлов и слияния

GIT_DIFF_OPTS— слегка громкое название для этой переменной. Единственными допустимыми значениями являются -u и --unified=, задающие количество контекстных строк, показываемых командой git diff.

GIT_EXTERNAL_DIFFзамещает конфигурационный параметр diff.external. Если значение задано, Git вызовет указанную программу вместо git diff.

GIT_DIFF_PATH_COUNTERи GIT_DIFF_PATH_TOTALиспользуются внутри программы, заданной через GIT_EXTERNAL_DIFF или diff.external. Первая содержит порядковый номер сравниваемого на данный момент файла (начиная с 1), вторая — полное количество файлов, подлежащих сравнению.

GIT_MERGE_VERBOSITYзадаёт уровень детализированности вывода при рекурсивном слиянии. Возможные значения перечислены ниже:

● 0 не выводить ничего, кроме единственного сообщения об ошибке..

● 1 выводить только конфликты.

● 2 также выводить изменения файлов.

● 3 показывать пропущенные неизменённые файлы.

● 4 выводить все пути при обработке.

● 5 и выше выводят даже отладочную информацию.

По умолчанию значение полагается равным 2.

Отладка

Хотите знать что на самом деле делает Git? Git ведёт достаточно подробный лог выполняемых действий и всё что вам нужно — включить его. Возможные значения приведённых ниже переменных следующие:

● "true", "1", или "2" – вывод осуществляется в стандартный поток ошибок (stderr).

● Абсолютный путь, начинающийся с / – вывод будет производиться в указанный файл.

GIT_TRACEзадаёт журналирование действий, не подпадающий под какую-либо определённую категорию. Это включает в себя разворачивание алиасов и вызовы внешних программ.

$GIT_TRACE=true git lga

20:12:49.877982 git.c:554 trace: exec: 'git-lga'

20:12:49.878369 run-command.c:341 trace: run_command: 'git-lga'

20:12:49.879529 git.c:282 trace: alias expansion: lga => 'log' '--graph' '--pretty=oneline' '--abbrev-commit' '--decorate' '--all'

20:12:49.879885 git.c:349 trace: built-in: git 'log' '--graph' '--pretty=oneline' '--abbrev-commit' '--decorate' '--all'

20:12:49.899217 run-command.c:341 trace: run_command: 'less'

20:12:49.899675 run-command.c:192 trace: exec: 'less'

GIT_TRACE_PACK_ACCESSзадаёт журналирование обращений к pack-файлам. При этом первое выводимое значение – файл, к которому происходит обращение, а второе значение – смещение внутри этого файла.

$GIT_TRACE_PACK_ACCESS=true git status

20:10:12.081397 sha1_file.c:2088 .git/objects/pack/pack-c3fa...291e.pack 12

20:10:12.081886 sha1_file.c:2088 .git/objects/pack/pack-c3fa...291e.pack 34662

20:10:12.082115 sha1_file.c:2088 .git/objects/pack/pack-c3fa...291e.pack 35175

#[…]

20:10:12.087398 sha1_file.c:2088 .git/objects/pack/pack-e80e...e3d2.pack 56914983

20:10:12.087419 sha1_file.c:2088 .git/objects/pack/pack-e80e...e3d2.pack 14303666

On branch master

Your branch is up-to-date with 'origin/master'.

nothing to commit, working directory clean

GIT_TRACE_PACKETзадаёт журналирование пакетов при операциях с сетью.

$GIT_TRACE_PACKET=true git ls-remote origin

20:15:14.867043 pkt-line.c:46 packet: git< # service=git-upload-pack

20:15:14.867071 pkt-line.c:46 packet: git< 0000

20:15:14.867079 pkt-line.c:46 packet: git< 97b8860c071898d9e162678ea1035a8ced2f8b1f HEAD\0multi_ack thin-pack side-band side-band-64k ofs-delta shallow no-progress include-tag multi_ack_detailed no-done symref=HEAD:refs/heads/master agent=git/2.0.4

20:15:14.867088 pkt-line.c:46 packet: git< 0f20ae29889d61f2e93ae00fd34f1cdb53285702 refs/heads/ab/add-interactive-show-diff-func-name

20:15:14.867094 pkt-line.c:46 packet: git< 36dc827bc9d17f80ed4f326de21247a5d1341fbc refs/heads/ah/doc-gitk-config

#[…]

GIT_TRACE_PERFORMANCEзадаёт журналирование данных о производительности. Вывод показывает, как долго выполнялись те или иные действия.

$GIT_TRACE_PERFORMANCE=true git gc

20:18:19.499676 trace.c:414 performance: 0.374835000 s: git command: 'git' 'pack-refs' '--all' '--prune'

20:18:19.845585 trace.c:414 performance: 0.343020000 s: git command: 'git' 'reflog' 'expire' '--all'

Counting objects: 170994, done.

Delta compression using up to 8 threads.

Compressing objects: 100% (43413/43413), done.

Writing objects: 100% (170994/170994), done.

Total 170994 (delta 126176), reused 170524 (delta 125706)

20:18:23.567927 trace.c:414 performance: 3.715349000 s: git command: 'git' 'pack-objects' '--keep-true-parents' '--honor-pack-keep' '--non-empty' '--all' '--reflog' '--unpack-unreachable=2.weeks.ago' '--local' '--delta-base-offset' '.git/objects/pack/.tmp-49190-pack'

20:18:23.584728 trace.c:414 performance: 0.000910000 s: git command: 'git' 'prune-packed'

20:18:23.605218 trace.c:414 performance: 0.017972000 s: git command: 'git' 'update-server-info'

20:18:23.606342 trace.c:414 performance: 3.756312000 s: git command: 'git' 'repack' '-d' '-l' '-A' '--unpack-unreachable=2.weeks.ago'

Checking connectivity: 170994, done.

20:18:25.225424 trace.c:414 performance: 1.616423000 s: git command: 'git' 'prune' '--expire' '2.weeks.ago'

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Скотт Чакон читать все книги автора по порядку

Скотт Чакон - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Pro Git отзывы


Отзывы читателей о книге Pro Git, автор: Скотт Чакон. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x