Git для профессионального программиста

Git для профессионального программиста
Питер
артикул: 48478894
СОГЛАСНО НАШИМ ДАННЫМ, ЭТОТ ПРОДУКТ СЕЙЧАС НЕ ДОСТУПЕН
793.00 грн.
Доставка из: Украина
   Описание
[html]Книга "Git для профессионального программиста" представляет собой обновленное руководство по использованию Git в современных условиях. С тех пор как проект Git - распределенная система управления версиями - был создан Линусом Торвальдсом, прошло много лет, и система Git превратилась в доминирующую систему контроля версий, как для коммерческих целей, так и для проектов с открытым исходным кодом. Эффективный и хорошо реализованный контроль версий необходим для любого успешного веб-проекта. Постепенно эту систему приняли на вооружение практически все сообщества разработчиков ПО с открытым исходным кодом. Появление огромного числа графических интерфейсов для всех платформ и поддержка IDE позволили внедрить Git в операционные системы семейства Windows. Второе издание книги "Git для профессионального программиста" было обновлено для Git-версии 2.0 и уделяет большое внимание GitHub.Содержание книги Чакон С., Штрауб Б. "Git для профессионального программиста"Предисловие от Скотта Чакона..........................................................................16Предисловие от Бена Страуба............................................................................181. Начало работы.................................................................................................19Управление версиями.............................................................................................19Локальные системы контроля версий.................................................................20Централизованные системы контроля версий.....................................................20Распределенные системы контроля версий........................................................21Краткая история Git................................................................................................23Основы Git..............................................................................................................23Снимки состояний, а не изменений....................................................................24Локальность операций.......................................................................................25Целостность Git..................................................................................................26Git, как правило, только добавляет данные........................................................26Три состояния....................................................................................................26Командная строка...................................................................................................28Установка Git..........................................................................................................28Установка в Linux...............................................................................................29Установка в Mac.................................................................................................29Установка в Windows..........................................................................................30Первая настройка Git..............................................................................................31Ваш идентификатор...........................................................................................31Выбор редактора................................................................................................32Проверка настроек.............................................................................................32Получение справочной информации.......................................................................33Заключение............................................................................................................332. Основы Git........................................................................................................34Создание репозитория в Git....................................................................................34Инициализация репозитория в существующей папке..........................................34Клонирование существующего репозитория.......................................................35Запись изменений в репозиторий...........................................................................36Проверка состояния файлов...............................................................................37Слежение за новыми файлами...........................................................................37Индексация измененных файлов........................................................................38Краткий отчет о состоянии.................................................................................39Игнорирование файлов......................................................................................40Просмотр индексированных и неиндексированных изменений...........................41Фиксация изменений..........................................................................................43Пропуск области индексирования.......................................................................45Удаление файлов...............................................................................................45Перемещение файлов........................................................................................47Просмотр истории версий.......................................................................................47Ограничение вывода команды log......................................................................52Отмена изменений..................................................................................................54Отмена индексирования.....................................................................................55Отмена внесенных в файл изменений................................................................56Удаленные репозитории.........................................................................................57Отображение удаленных репозиториев..............................................................57Добавление удаленных репозиториев................................................................58Извлечение данных из удаленных репозиториев................................................59Отправка данных в удаленный репозиторий.......................................................59Просмотр удаленных репозиториев....................................................................60Удаление и переименование удаленных репозиториев.......................................61Теги.......................................................................................................................61Вывод списка тегов............................................................................................62Создание тегов...................................................................................................62Теги с комментариями........................................................................................62Легковесные теги...............................................................................................63Расстановка тегов постфактум...........................................................................63Обмен тегами.....................................................................................................64Псевдонимы в Git...................................................................................................65Заключение............................................................................................................663. Ветвления в Git................................................................................................67Суть ветвления.......................................................................................................67Создание новой ветки........................................................................................70Смена веток.......................................................................................................71Основы ветвления и слияния..................................................................................74Основы ветвления..............................................................................................74Основы слияния.................................................................................................78Конфликты при слиянии.....................................................................................80Управление ветками...............................................................................................82Приемы работы с ветками......................................................................................83Долгоживущие ветки..........................................................................................84Тематические ветки...........................................................................................85Удаленные ветки....................................................................................................87Отправка данных...............................................................................................91Слежение за ветками.........................................................................................92Получение данных с последующим слиянием.....................................................94Ликвидация веток с удаленного сервера............................................................94Перемещение данных.............................................................................................94Основы перемещения данных............................................................................94Более интересные варианты перемещений........................................................97Риски, связанные с перемещением.....................................................................99Перемещение после перемещения...................................................................102Сравнение перемещения и слияния..................................................................103Заключение..........................................................................................................1044. Git на сервере.................................................................................................105Протоколы............................................................................................................106Локальный протокол........................................................................................106Протоколы семейства HTTP..............................................................................107Протокол SSH...................................................................................................110Протокол Git.....................................................................................................111Настройка Git на сервере......................................................................................111Размещение на сервере голого репозитория....................................................112Простые настройки...........................................................................................113Создание открытого ключа SSH............................................................................114Настройка сервера...............................................................................................115Git-демон..............................................................................................................117Интеллектуальный протокол HTTP........................................................................119Интерфейс GitWeb................................................................................................120Приложение GitLab...............................................................................................122Установка.........................................................................................................122Администрирование.........................................................................................123Пользователи...................................................................................................124Группы.............................................................................................................124Проекты...........................................................................................................125Хуки.................................................................................................................126Базовое применение........................................................................................126Совместная работа...........................................................................................126Сторонний хостинг...............................................................................................127Заключение..........................................................................................................1285. Распределенная система Git.........................................................................129Распределенные рабочие процессы......................................................................129Централизованная работа................................................................................130Диспетчер интеграции.....................................................................................131Диктатор и помощники.....................................................................................132Заключение......................................................................................................133Содействие проекту..............................................................................................133Рекомендации по созданию коммитов..............................................................134Работа в маленькой группе..............................................................................136Маленькая группа с руководителем..................................................................142Открытый проект, ветвление............................................................................146Открытый проект, электронная почта..............................................................150Заключение......................................................................................................153Сопровождение проекта.......................................................................................153Работа с тематическими ветками......................................................................153Исправления, присланные по почте.................................................................154Просмотр вносимых изменений........................................................................158Интеграция чужих наработок...........................................................................159Схема с большим количеством слияний............................................................162Схема с перемещением и отбором....................................................................163Программный компонент rerere........................................................................165Идентификация устойчивых версий..................................................................165Генерация номера сборки................................................................................166Подготовка устойчивой версии.........................................................................167Команда shortlog..............................................................................................167Заключение..........................................................................................................1686. GitHub.............................................................................................................169Настройка и конфигурирование учетной записи...................................................170Доступ по протоколу SSH.................................................................................170Аватар..............................................................................................................172Адреса электронной почты...............................................................................173Аутентификация по двум признакам................................................................173Содействие проекту..............................................................................................174Ветвления проектов.........................................................................................175Схема работы с GitHub.....................................................................................175Запрос на включение.......................................................................................176Стадии обработки запроса на включение.........................................................180Более сложные запросы на включение.............................................................183Язык разметки Markdown..................................................................................188GitHub-версия языка Markdown.........................................................................188Сопровождение проекта.......................................................................................193Создание нового репозитория..........................................................................193Добавление соавторов.....................................................................................194Управление запросами на включение...............................................................195Упоминания и уведомления..............................................................................201Специальные файлы........................................................................................204Администрирование проекта............................................................................206Управление организацией....................................................................................207Основные сведения об организации.................................................................207Группы.............................................................................................................208Журнал регистрации........................................................................................210GitHub-сценарии...................................................................................................210Хуки.................................................................................................................211API для GitHub..................................................................................................214От пользователя Octokit...................................................................................220Заключение..........................................................................................................2207. Git-инструментарий.......................................................................................221Выбор версии.......................................................................................................221Одна версия.....................................................................................................221Сокращения журнала ссылок............................................................................224Диапазоны коммитов........................................................................................226Интерактивное индексирование...........................................................................229Индексирование файлов и его отмена..............................................................229Индексирование изменений.............................................................................231Скрытие и очистка................................................................................................232Скрытие вашей работы.....................................................................................233Более сложные варианты скрытия....................................................................235Отмена скрытых изменений..............................................................................236Создание ветки из скрытого фрагмента............................................................236Очистка рабочей папки....................................................................................237Подпись................................................................................................................238Знакомство с GPG.............................................................................................239Подпись тегов..................................................................................................239Проверка тегов................................................................................................240Подпись коммитов............................................................................................240Подпись должна быть у всех............................................................................242Поиск...................................................................................................................242Команда git grep...............................................................................................242Поиск в Git-журнале.........................................................................................244Поиск по строкам кода.....................................................................................244Перезапись истории.............................................................................................245Редактирование последнего коммита...............................................................246Редактирование нескольких сообщений фиксации...........................................246Изменение порядка следования коммитов........................................................248Объединение коммитов....................................................................................249Разбиение коммита..........................................................................................250Последнее средство: команда filter-branch........................................................251Команда reset.......................................................................................................252Три дерева.......................................................................................................253Рабочий процесс..............................................................................................254Роль команды reset..........................................................................................259Команда reset с указанием пути.......................................................................263Объединение коммитов....................................................................................265Сравнение с командой checkout........................................................................267Заключение......................................................................................................269Более сложные варианты слияния........................................................................269Конфликты слияния.........................................................................................270Прерывание слияния........................................................................................272Игнорирование пробелов.................................................................................272Слияние файлов вручную.................................................................................273Применение команды checkout.........................................................................276Протоколирование слияния..............................................................................277Комбинированный формат...............................................................................278Отмена результатов слияния............................................................................280Другие типы слияния.......................................................................................284Команда rerere.....................................................................................................287Отладка с помощью Git.........................................................................................292Примечания к файлам......................................................................................293Двоичный поиск...............................................................................................294Подмодули...........................................................................................................296Начало работы.................................................................................................296Клонирование проекта с подмодулями.............................................................298Работа над проектом с подмодулями................................................................300Публикация результатов редактирования подмодуля.......................................305Слияние результатов редактирования подмодуля............................................306Полезные советы.............................................................................................309Пакеты.................................................................................................................313Замена.................................................................................................................316Хранение учетных данных....................................................................................322Взгляд изнутри.................................................................................................323Нестандартный вариант хранения учетных данных..........................................325Заключение..........................................................................................................3278. Настройка системы Git..................................................................................328Конфигурирование системы Git............................................................................328Основные настройки на стороне клиента.........................................................329Цвета в Git.......................................................................................................331Внешние инструменты для слияния и индикации изменений............................332Форматирование и пробелы.............................................................................336Настройка сервера...........................................................................................338Git-атрибуты.........................................................................................................339Бинарные файлы..............................................................................................339Развертывание ключа......................................................................................342Экспорт репозитория........................................................................................345Стратегии слияния...........................................................................................346Git-хуки................................................................................................................347Установка хука.................................................................................................347Хуки на стороне клиента..................................................................................347Хуки для работы с коммитами..........................................................................347Хуки для работы с электронной почтой............................................................348Другие клиентские хуки...................................................................................349Хуки на стороне сервера..................................................................................350Пример принудительного внедрения политики.....................................................351Хук на стороне сервера....................................................................................351Формат сообщения фиксации...........................................................................352Система контроля доступа пользователей........................................................353Тестирование...................................................................................................356Хуки на стороне клиента..................................................................................357Заключение..........................................................................................................3609. Git и другие системы контроля версий........................................................361Git в качестве клиента..........................................................................................361Git и Subversion................................................................................................362Git и Mercurial...................................................................................................372Git и Perforce....................................................................................................380Git и TFS...........................................................................................................394Переход на Git......................................................................................................404Subversion........................................................................................................404Mercurial...........................................................................................................406Perforce............................................................................................................408TFS...................................................................................................................410Другие варианты импорта................................................................................411Заключение..........................................................................................................41710. Git изнутри...................................................................................................418Канализация и фарфор........................................................................................419Объекты в Git.......................................................................................................420Объекты-деревья.............................................................................................421Объекты-коммиты............................................................................................424Хранение объектов...........................................................................................427Ссылки в Git.........................................................................................................428Указатель HEAD................................................................................................429Теги.................................................................................................................430Удаленные ветки..............................................................................................431Pack-файлы..........................................................................................................432Спецификация ссылок..........................................................................................435Спецификация ссылок для отправки данных на сервер....................................437Ликвидация ссылок..........................................................................................437Протоколы передачи данных................................................................................438Простой протокол............................................................................................438Интеллектуальный протокол............................................................................440Обслуживание репозитория и восстановление данных.........................................444Обслуживание репозитория.............................................................................444Восстановление данных...................................................................................445Удаление объектов...........................................................................................447Переменные среды...............................................................................................451Глобальное поведение.....................................................................................451Расположение репозитория..............................................................................451Пути доступа....................................................................................................452Фиксация изменений........................................................................................453Работа в сети...................................................................................................453Определение изменений и слияние..................................................................454Отладка...........................................................................................................454Разное..............................................................................................................456Заключение..........................................................................................................457Приложение A. Git в других средах..................................................................458Графические интерфейсы.....................................................................................458Утилиты gitk и git-gui........................................................................................459GitHub-клиенты для Mac и Windows..................................................................461Подводя итоги..................................................................................................464Другие GUI...........................................................................................................464Git в Visual Studio..................................................................................................465Git в Eclipse...........................................................................................................466Git в Bash.............................................................................................................466Git в Zsh...............................................................................................................468Git в Powershell.....................................................................................................469Заключение..........................................................................................................470Приложение Б. Встраивание Git в приложения..............................................471Командная строка.................................................................................................471Libgit2...................................................................................................................472Нетривиальная функциональность...................................................................474Другие привязки..............................................................................................476Приложение В. Git-команды.............................................................................478Настройка и конфигурирование............................................................................478Копирование и создание проектов.......................................................................479Фиксация состояния.............................................................................................480Ветвления и слияния............................................................................................483Совместная работа и обновление проектов..........................................................486Проверка и сравнение..........................................................................................489Отладка................................................................................................................490Исправления........................................................................................................490Электронная почта...............................................................................................491Внешние системы.................................................................................................492Администрирование.............................................................................................493Служебные команды.............................................................................................494Об авторах..........................................................................................................495[/html]
   Характеристики
categoryTitle: Научная и техническая литература
   График изменения цены & курс обмена валют

Пользователи также просматривали