Пример использования git


Ответы

Создать новый репозитарий

git init

Добавить новый файл в репозитарий

git add filename

Зафиксировать изменение

git commit -m 'Название'

Отправить локальные изменения на сервер

git push

Загрузить изменения с сервера

git pull

Клонировать репозитарий с сервера

git clone https://github.com/RemiZOffAlex/specialistoff.net.git

История изменений

git log

История изменений одного файла

Также можно выяснить когда был удалён файл в git

git log -- <filename>
git log -p <filename>

Сравнить последние изменения

git diff

Сравнить изменения с удалённым репозиторием

git diff <local branch> <remote>/<remote branch>

Просмотр и управление внешними репозитариями

git remote

Добавление ссылки на внешний репозитарий

git remote add remizoffalex https://github.com/RemiZOffAlex/specialistoff.net

Удаление ссылки на внешний репозитарий

git remote remove remizoffalex

Переключить на удалённую (remote) ветку

git checkout -b dev origin/dev

Статистика

Статистика по автору

git log --author="<authorname>" --oneline --shortstat

Количество файлов и строк кода

git ls-files | xargs wc -l

Файл .gitkeep

Размещается внутри пустого каталога для обязательного сохранения самого каталога, если в нём нет содержимого

Файл .gitignore

Размещается внутри каталога проекта или в любом из подкаталогов и содержит список игнорируемых файлов, каталогов, подкаталогов, в том числе по маске

Хуки

Размещаются в каталоге .git/hooks

Хуки можно использовать для запуска сценариев CI/CD

post-receive

Применяется после получения коммитов

Пример:

#!/bin/sh
cd ..
GIT_DIR='.git'
git reset --hard
kill -s HUP `cat /var/run/uwsgi/specialistoff.net.pid`