Отличный Git
Отобранное множество потрясающе отличных инструментов, ресурсов и замечательных вещей для Git.
Вклад
Приглашаются pull requests с интересными инструментами/проектами/ресурсами.
Оглавление
- На вебе существует огромное количество учебных материалов Полетные правила для Git — руководство о том, что делать, когда возникают проблемы
-
Try Git — обучение Git за cqteen минут с помощью псевдо-терминального интерфейса
-
Учебник Git от Atlassian — полный учебник по Git
-
Используйте gitk для понимания Git — все важные термины Git (commit, commit SHA, ветка, слияние, переопределение) объясняются с использованием gitk
-
Учебник по системам контроля версий с Git — бесплатная книга от fournova Software (производителей Tower), связанная с платной видео-курсом
-
Pro Git — бесплатная книга по Git, также доступна в печатном виде (CC BY-NC-SA 3.0)
-
Узнайте, как использовать Git — бесплатные учебники и ресурсы для помощи в освоении основ Git
-
Книга сообщества Git — книга, созданная десятками людей из сообщества Git
-
Git Pocket Guide — короткая книга издательства O'Reilly по Git
-
Git Real: Code School — платный курс обучения от Code School
-
Git Branching — визуальный способ обучения работе с ветвями Git
-
Учебник Git за месяц обедов — учебное пособие компании Manning Publications
-
Git Magichtml) — короткое учебное пособие по Git
-
Git снизу вверх — отличная серия статей о Git
-
Git-It — интерактивное приложение-тренажер, которое работает на вашем рабочем столе!
-
Git How To — шаг за шагом введение
-
Переход на Git LFS — использование Git LFS в существующем репозитории для управления большими файлами более эффективным образом
-
Объясните Git с помощью D3 — визуализация некоторых базовых концепций Git с помощью D3.js: commit, ветка, checkout, reset, revert, merge, rebase, fetch, pull, push, tag
-
Понимание Git — визуальная перспектива — Git с точки зрения временной шкалы и уровня и сводка команд Git, группировка по функциональности
- Сводка Git и Git-Flow
- Полезные советы по Git
- Интерактивная/контекстная/визуальная сводка
-
Диаграмма "Git Pretty" потока — как восстановиться после путаницы
- Уроки Git от Software Carpentry
-
Пареблум Git — нArrative-стильное введение в концепции Git от сооснователя GitHub
- Видео-уроки Git от CodeBasicsHub
-
Промежуточный уровень Gitedu/~zjn2101/intermediate-git/#1) — более низкоуровневое, структурное объяснение концепций Git
-
Поток работы Fork и Pull Request — Очень хорошо объяснено, простой и лаконичный способ понимания потока работы Git Fork и Pull Request.
-
Git School Dude — Это YouTube канал с большим количеством отличных видео о Git. Он охватывает всё от базовых до продвинутых тем Git.
-
Git Choose Your Own Adventure — Я никогда не находил туториал по Git, который бы мне не понравился во время его выполнения. Иногда эти туториалы просто плохо совпадали с моей реальной работой. Этот туториал в форме выбора своего приключения был спасением, когда я только начинал работу с Git.
-
О том, как отменять, исправлять или удалять коммиты в Git — довольно полное руководство по восстановлению от того, что вы случайно сделали при использовании Git.
-
Разбор коммита Git — Блог, объясняющий, как Git создаёт и хранит историю коммитов. ## Стиль оформления
- Стиль оформления при работе с git ** Udacity Nanodegree Style Guide
Клиенты
Клиенты Git доступны на всех платформах, от главного сервера до вашего мобильного устройства.* TortoiseGit — удобный клиент Git для Windows, хорошо интегрированный с Windows Explorer.
-
GitHub Desktop — клиент Git от GitHub. Работает плавно с GitHub и GitHub Enterprise.
-
SourceTree — бесплатный графический клиент (включает в себя пиво). Только для Windows и Mac.
-
Tower — популярный небесплатный графический клиент Git. Для Mac и Windows.
-
SmartGit — коммерческий комплексный клиент управления версиями со встроенными Git, SVN и Mercurial. Кросс-платформенный (работает на Windows, Mac и Linux).
-
RabbitVCS — графический инструмент управления версиями, вдохновленный TortoiseSVN, с интеграцией в Nautilus и Thunar.
-
gitg — открытый исходный код GTK+ графического клиента.
-
git-cola — кросс-платформенный графический клиент Git.
-
SGit — клиент Git для Android 4.x.
-
Ungit — самый простой способ использования Git. На любой платформе. Везде.
-
GitKraken — кросс-платформенный клиент Git для Windows, Mac & Linux. Основан на Electron. Бесплатен для некоммерческого использования и есть платная версия Pro.
-
GitUp — чистый, минималистичный клиент Git. Только для Mac.
-
GitExtensions — расширение командной строки, плагин для Visual Studio 2010-2015 и самостоятельный инструмент управления репозиторием Git.
-
WorkingCopy — мощный клиент Git для iOS.Бесплатен с покупкой внутри приложения для возможности отправки коммитов.
-
Git Add-ons - Расширяют базовый
git
CLI
-
Fork - Отличный и бесплатный клиент Git для macOS и Windows
-
Magit - Графическая оболочка Git внутри Emacs## Хостинг репозиториев
Люди имеют множество вариантов для хостинга своего исходного кода. GitHub — де факто сервис хостинга Git. Прекрасная интеграция с большинством внешних служб.
-
BitBucket — известен своими бесплатными приватными репозиториями (максимум OnClickListener 5 пользователей).
-
Kiln — платный сервис хостинга Git-репозиториев
-
GitLab.com — бесплатный сервис хостинга Git-репозиториев, предоставленный GitLab EE. Безлимитное количество репозиториев и приватных участников
-
AWS CodeCommit — облачный сервис управления версиями от Amazon Web Services, работающий на высоконадежной инфраструктуре
-
Deveo — платный сервис хостинга репозиториев с поддержкой Git, Subversion, Mercurial и WebDAV##
Локально хостируемый репозиторий
Или вы можете самостоятельно хостировать код.* Gitolite — простое решение с детализированной системой контроля доступа
-
GitHub Enterprise — решение для самостоятельного хостинга от GitHub
-
Bitbucket Server — решение для самостоятельного хостинга от Atlassian. Хорошая интеграция с JIRA и другими продуктами Atlassian
-
GitLab CE/EE — популярное opensource решение Git (CE) с опцией платного обслуживания (EE)
-
Upsource — недавнее предложение от компании JetBrains, известной своими решениями для разработчиков. Возможность хостинга репозитория в разработке. Бесплатно для gst 10 пользователей. Хорошая интеграция с YouTrack и TeamCity
-
GitBucket — клон GitHub, реализованный на Scala
-
Gogs — решение для самостоятельного хостинга Git, написанное на Go
-
Gitea — управляемое сообществом форк Gogs, легковесное решение для хостинга кода, написанное на Go
-
GitBlit — чисто Java решение для управления, просмотра и предоставления доступа к репозиториям Git
-
Apache Allura — открытая реализация платформы для хостинга проектов
-
Phabricator — интегрированное решение мощных инструментов для помощи компаниям в создании более качественного программного обеспечения
-
RhodeCode CE/EE — платформа для управления корпоративными репозиториями исходного кода## Процесс работы
Недорогие ветвления позволяют пользователям применять различные рабочие процессы, помимо централизованного подхода.
-
Pro Git - Распределённые рабочие процессы
-
Atlassian Git Tutorial - Сравнение рабочих процессов
-
Gitflow — наиболее известная модель рабочего процесса Git
-
GitHub flow — простая модель ветвлений с единственным основным репозиторием
-
GitLab flow
-
Git DMZ Flow
-
Aoneflow — интересная модель ветвлений, которая откладывает окончательное слияние в производственную ветку, используемую Alibaba. Дополнительная статья (на китайском языке) доступна по ссылкам 1, 2
Управление хуками
Git предоставляет хуки на этапе коммита/пуша, что позволяет интегрироваться с инструментами проверки качества кода и системами непрерывной интеграции (Continuous Integration, CI).* pre-commit — фреймворк для управления и поддержки многоязычных хуков pre-commit от Yelp. Поддерживает множество языков программирования.
-
Overcommit — расширяемый менеджер хуков Git, написанный на Ruby.
-
git-hooks — инструмент для управления проектными, личными и глобальными хуками Git.
-
quickhook — быстрый, Unix-подобный, мнемонический запускатель хуков Git.
-
husky — хуки Git для Node.js, управление хуками из вашего package.json.
- больше информации на https://githooks.com/## Инструменты
- Различные инструменты для повседневной работы awesome-git-addons — список более чем 20 плагинов для Git, включая все доступные команды
-
myrepos — инструмент для управления несколькими системами контроля версий
-
mu-repo — инструмент для работы с множеством репозиториев Git
-
gr — инструмент для управления несколькими репозиториями Git
-
BFG Repo-Cleaner — простой и быстрый альтернативный способ очистки плохих данных из истории вашего репозитория Git
-
GitIgnore Collection — коллекция файлов .gitignore для различных языков программирования
-
etckeeper — набор инструментов для хранения конфигурационных файлов /etc в репозитории Git
-
git-extras — полезные утилиты для Git, добавляющие новые команды
-
git-extra-commands — ещё одна коллекция полезных команд для Git
-
git-follow — инструмент для отслеживания изменений файла на протяжении всей истории репозитория Git
-
Gitrob — консольный инструмент для поиска чувствительной информации, оставленной в общедоступных файлах на GitHub
-
gitFS — файловая система FUSE, полностью интегрированная с Git
-
Gitless — экспериментальная версия Git, меняющая некоторые базовые понятия Git
-
ghqcom/motemen/ghq) — организация удалённых репозиториев
-
bash-git-prompt — информативный и красивый промпт для пользователей Git
-
conventional-changelog — набор инструментов для парсинга сообщений о конвенциональных коммитах из истории Git
-
release-it — автоматизация выпусков для репозиториев Git и/или пакетов npm. Генерация changelog, выпуск на GitHub/GitLab и т. д.
Расширения
Git предназначен для управления версионностью исходного кода, но люди расширяют эту идею и внедряют контроль версий везде.* Git Large File Storage — практическое решение для управления большими файлами. Поддерживается GitHub.
-
Git Virtual File System или GVFS — решение для управления очень большими репозиториями Git, при этом сохраняется скорость и эффективность основных операций. Находится в разработке Microsoft.
-
git-annex — позволяет управлять большими двоичными файлами между машинами, как будто это обычный репозиторий Git. Возможно создание синхронизированной папки с помощью git-annex assistant.
Комментарии ( 0 )