Перейти к содержанию

Git шпаргалка

Git – очень полезный навык, который необходим во многих компаниях.

Просматривая предложения работы для разработчиков программного обеспечения, вы понимаете, что знание git почти так же важно, как и знание реального языка программирования.

Но многие люди забывают проверить, как работает git и какие команды отвечают за какие действия.

Вот почему сегодня я решил создать простую шпаргалку с основными командами git, которые вы можете просмотреть и использовать всякий раз, когда вы просто забыли, что нужно поместить в командную строку или просто обновить память.

Кроме того, я хотел бы обозначить несколько основных терминов, которые должен знать каждый разработчик, чтобы понять git-flow.

В конце я также расскажу вам о графических интерфейсах для git, которые я использовал некоторое время назад или использую прямо сейчас, и которые мне действительно нравятся из-за их простоты.

Несколько основных терминов, помогающих понять команды git

repository ( репозиторий) хранит все файлы вашего проекта, включая коммиты и ветки.

branch (ветка) представляет собой копию репозитория, содержащего конкретную версию. Основная ветка в git это master.

commit может быть представлен как единое сохранение изменений в конкретной ветке.

checkout – это операция переключения между текущей веткой и той, которая указана в команде.

master является основной веткой репозитория

merge – это действие, которое добавляет изменения из одной ветки в другую.

fork является копией репозитория.

head – это самый последний коммит репозитория, с которым вы работаете.

Основные команды git, которые должен знать каждый

git init | git init [folder]

Git init используется для инициализации пустого репозитория из папки, в которой вы используете эту команду или по пути к папке – оба способа верны.

Команда используется при запуске нового проекта или если вы хотите инициализировать git-репозиторий внутри существующего проекта.

git clone [repo URL] [folder]

Git clone используется для копирования существующего репозитория в указанную папку на вашем компьютере.

Git clone может использоваться только с URL репозитория в качестве параметра, и тогда он скопирует репозиторий в папку, из которой вы использовали команду.

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

git add [directory | file]

Git add – это этап изменения в каталоге или в файле, и это зависит от того, что вы добавляете в качестве параметра.

В большинстве случаев за ним следуют команды git commit и git push.

git commit -m "[message]"

Эта команда используется для фиксации всех поэтапных изменений, когда пользовательское сообщение передается в виде строки.

Изменяя параметр -m на -am, можно сразу добавлять и фиксировать изменения.

git push

Это команда, которая отправляет изменения в исходную ветку.

git status

Git status используется для проверки состояния измененных файлов и показывает, какие файлы помещены, не установлены и не отслежены.

git log

Git log используется для отображения истории коммита в формате по умолчанию.

git diff

Git diff показывает все неустановленные различия между индексом и текущим каталогом.

Эта команда может использоваться с -staged для отображения различий между промежуточными файлами и самыми последними версиями.

Другой вариант – использовать команду с именем файла для отображения различий между файлом и последним коммитом.

git pull

Git pull используется для получения изменений из исходной ветки и объединяет их с локальной веткой.

git fetch

Эта команда извлекает самые последние изменения из ветки источника, но не объединяет.

Команды Git Branch

git branch

Эта команда отображает список всех веток в репозитории.

Она также может создать несуществующую ветвь, если вы добавите имя ветки в качестве параметра.

git branch -d [branchname]

Использование флага -d удалит ветку с указанным именем.

git checkout [branchname]

Эта команда переключается на ветку с именем [branchnamed].

Если вы добавите флаг -b перед именем ветки, он перейдет к новой ветке, которая будет создана автоматически.

git merge [branchname]

Команда объединяет ветку с указанным именем в текущую ветку.

Git отмена изменений

git revert [commit]

Эта команда создает новый коммит, который отменяет изменения, внесенные в указанный коммит, и применяет его к текущей ветке.

git reset [filename]

Команда удаленно указывает файл из промежуточной ветки и оставляет рабочий каталог без изменений.

Команды Git config

git config -global user.email [user_email]

git config -global user.name [user_name]

Команды, показанные выше используются для настройки текущей электронной почты и имени пользователя.

git config --global --edit

И эта команда очень полезна, так как она позволяет редактировать настройки пользователя в текстовом редакторе.