Git — это распределенная система контроля версий с открытым исходным кодом, которая облегчает работу с GitHub на вашем ноутбуке или настольном компьютере. В этой статье блога обобщены часто используемые инструкции командной строки Git для быстрого ознакомления.
- Установить
- Настройте инструментарий (его нужно настроить только один раз после установки)
- Создание репозиториев
- подключение Git и GitHub через SSH
- Синхронизация изменений (наиболее часто используемая часть)
- Добавление удаленного репозитория
- Синхронизация удаленных репозиториев
- Файл .gitignore
- Ветви
- Глоссарий
- Учебные ресурсы
Установить
Git для всех платформ
http://git-scm.com
Дистрибутивы Git для Linux и POSIX систем также доступны на официальном сайте Git SCM.
Настройте инструментарий (его нужно настроить только один раз после установки)
Настройте информацию о пользователях для всех локальных репозиториев
$ git config --global user.name "[name]"
Устанавливает имя, которое вы хотите прикрепить к своим транзакциям фиксации
$ git config --global user.email "[email address]"
Устанавливает email, который вы хотите прикрепить к транзакциям фиксации
$ git config --global color.ui auto
Включает полезную раскраску вывода командной строки (вы можете пропустить это, если хотите)
Создание репозиториев
При создании нового репозитория вам нужно сделать это только один раз: либо локально, затем отправить на GitHub, либо клонировать существующий репозиторий.
$ git init
Превращение существующего каталога в git-репозиторий
$ git clone [url]
Клонируйте (загрузите) репозиторий, который уже существует на
GitHub, включая все файлы, ветви и коммиты.
подключение Git и GitHub через SSH
Это одна из самых важных вещей для настройки git и GitHub. Я рекомендую вам следовать этим двум страницам официальной документации GitHub для создания и добавления ключей SSH.
✅ Генерирование нового SSH-ключа и добавление его в ssh-agent
✅ Добавление нового SSH-ключа в учетную запись GitHub
Синхронизация изменений (наиболее часто используемая часть)
Синхронизируйте ваш локальный репозиторий с удаленным репозиторием
на GitHub.com
$ git add [file]
Чтобы добавить файл на сцену. В основном вы будете использовать git add .
для добавления всех файлов сразу.
$ git commit -m "commit message"
Все изменения файлов, которые находятся на стадии, будут зафиксированы (сохранены) в локальном git-репозитории после выполнения этой команды.
$ git status
Чтобы проверить текущее состояние репозитория.
Добавление удаленного репозитория
Чтобы добавить новый удаленный репозиторий, используйте команду git remote add в терминале, в каталоге, в котором хранится ваш репозиторий.
Команда git remote add принимает два аргумента:
Имя удаленного хранилища, например, origin
Удаленный URL, например, https://github.com/user/repo.git.
$ git remote add origin https://github.com/user/repo.git
# Set a new remote
$ git remote -v
# Verify new remote
> origin https://github.com/user/repo.git (fetch)
> origin https://github.com/user/repo.git (push)
Синхронизация удаленных репозиториев
Для первой синхронизации изменений с удаленным репозиторием используйте следующую команду
✓ Помните -u используется только при первой синхронизации, в дальнейшем вы можете просто использовать эту команду.
Загружает все коммиты локальной ветки на GitHub
$ git fetch [remote] [branch]
Загружает всю историю из удаленных ветвей отслеживания
$ git merge
Объединяет удаленную ветку отслеживания в текущую локальную ветку
$ git pull [remote] [branch]
Обновляет вашу текущую локальную рабочую ветку всеми новыми
коммитами из соответствующей удалённой ветки на GitHub.
git pull
— это комбинация git fetch
и git merge
.
Файл .gitignore
Иногда может быть хорошей идеей исключить файлы из
отслеживания с помощью Git. Обычно это делается в специальном файле .gitignore
. Полезные шаблоны для файлов .gitignore
можно найти на github.com/github/gitignore.
Ветви
Ветви — важная часть работы с Git’ом. Любой
коммиты, которые вы сделаете, будут сделаны в той ветке, в которой вы в данный момент
«выписаны». Используйте git status
, чтобы узнать, какая это ветвь.
$ git branch [branch-name]
Создает новую ветвь
$ git checkout [branch-name]
Переключается на указанную ветвь и обновляет
рабочий каталог
$ git merge [branch]
Объединяет историю указанной ветки в текущую ветку. Это обычно делается в запросах на исправление, но является важной операцией Git.
$ git branch -d [branch-name]
Удаляет указанную ветвь
Глоссарий
git: распределенная система контроля версий с открытым исходным кодом
GitHub: платформа для размещения и совместной работы над репозиториями Git
commit: объект Git, снимок всего репозитория, сжатый в SHA.
ответвление: легкий подвижный указатель на коммит
клон: локальная версия репозитория, включая все коммиты и ветки
remote: общий репозиторий на GitHub, который все члены команды используют для обмена своими изменениями
fork: копия репозитория на GitHub, принадлежащая другому пользователю
pull request: место для сравнения и обсуждения различий, внесенных в ветку, с помощью рецензий, комментариев, интегрированных
тесты и многое другое
HEAD: представляет собой текущий рабочий каталог, указатель HEAD может быть перемещен в различные ветви, теги или коммиты
при использовании git checkout
.
Учебные ресурсы
- Интерактивное обучение по ветвлению Git
- Git и GitHub для начинающих — краш-курс
Спасибо!
🐦 @g_sudarshan11 Twitter
🐧 G-Sudarshan GitHub
🏒 g-sudarshan LinkedIn
📸 @g_sudarshan11 Instagram