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

Скотт Чакон, Бен Штрауб

Эта книга представляет собой обновленное руководство по использованию Git в современных условиях. С тех пор как проект Git - распределенная система управления версиями - был создан Линусом Торвальдсом, прошло много лет, и система Git превратилась в доминирующую систему контроля версий, как для коммерческих целей, так и для проектов с открытым исходным кодом. Эффективный и хорошо реализованный контроль версий необходим для любого успешного веб-проекта. Постепенно эту систему приняли на вооружение практически все сообщества разработчиков ПО с открытым исходным кодом. Появление огромного числа графических интерфейсов для всех платформ и поддержка IDE позволили внедрить Git в операционные системы семейства Windows. Второе издание книги было обновлено для Git-версии 2.0 и уделяет большое внимание GitHub.

Издательство: Питер, Серия: Библиотека программиста, 2016 г.

ISBN 978-5-496-01763-3

Количество страниц: 496.

Содержание книги «Git для профессионального программиста»:

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

Инструкция как скачать книгу Скотт Чакон, Бен Штрауб: Git для профессионального программиста в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.
Git для профессионального программиста
Рейтинг книги:
0 голосов
3455

Поиск книг:




При поиске учитываются только слова, длина которых больше 3-х символов.

Статистика: