Изучим 2 части GitHub:
1. Веб версия (http://github.com/)
Управление репозиториями
История коммитов
Changelog
2. Консоль (apt install git-all)Отслеживание и публикация локальных изменений в коде проекта
Получение внешних изменений (от других разработчиков)
Откат к предыдущим версиям
Клиент может заменить консоль, но не для разработки
Официальный клиент, призванный заменить консоль, называется GitHub Desktop. Кроме него, существует масса аналогов, например GitKraken (для Linux), а так же расширений для IDE, например GitLens (для Visual Studio). На практике эти приложения не показывают стабильной работы и сильно ограничены по функционалу, в сравнении с консолью. Например, GitHub Desktop не позволяет сделать принудительный откат/пуш. Поэтому приложения с красивым GUI могут рекомендоваться менеджерам проектов, но никак не разработчикам
Базовые знания
Подключаемся к серверу
Для Windows можно использовать Putty, а для Linux использовать команду "ssh *имя пользователя*@*адрес сервера*" (если ssh не предустановлена, то пишем apt-get install openssh-client)
Получаем доступ к репозиторию на свой аккаунт
Запрашиваем у владельца репозитория доступ на свой никнейм и ссылку на проект, переходим в браузере по ссылке и принимаем приглашение
Основные команды
ls выводит все папки и файлы из текущей директории
cd - позволяет перейти по указанному пути, примеры:
cd mysite - переходит в папку mysite в текущей директории
cd / - переходит в корень файловой системы (на VPS сайты хранятся в директории /var/www/)
cd ~/ - переходит в домашнюю директорию (на хостингах сайты хранятся именно здесь)
git remote -v - выводит ссылку текущего подключенного репозитория
git pull origin *ветка* - скачивает актуальную версию из указанной ветки, пример использования git pull origin master
git status - выводит файлы, содержимое которых было изменено не выгружено на GitHub
git add *файл* - этот этап называется stage, указанные файлы в последующем войдут в коммит. Примеры использования:
git add /image/file.jpg - добавляет в stage файл под названием file.jpg, находящийся в папке image, которая находится в текущей директории
git add . - добавляет все файлы
git commit -a -m "*название коммита*" - превращает все файлы из stage в commit, для последующей публикации. Название коммита должно отражать его содержимое. Пример использования git commit -a -m "Page About US and fixes"
git push origin *ветка* - публикует существующие коммиты в репозиторий. Пример использования git push origin maste
git config --global credential.helper cache - кэширует логин и пароль