Git – это консольная утилита, предназначенная для контроля версий, то есть, для хранения истории изменений, которые пользователь вносит в файлы проекта. Обычно её используют для работы над приложениями, но можно применять и в других случаях, например, дизайнеры применяют Гит для хранения различных версий рисунков и макетов.
Гит позволяет откатить приложение до ранней версии, сравнивать и анализировать изменения.
- Git для начинающих: основные термины и понятия, вводное руководство
- Принцип работы Git
- Установка Git
- Предварительная настройка Git
- Создание первого репозитория в Git
- Когда нужно делать коммит
- Совместная работа над проектами Git
- Распространённая проблема при работе с проектом Git
- Полезные команды — Git commands
- Программы с графическим интерфейсом для работы с Git
- GitHub Desktop
- Sourcetree
- GitKraken
- Роботы для трейдинга на GitHub — Bot Github Open Source
- Python Trading Robot
- Торговый бот Cassandre
- EA31337 Libre
Git для начинающих: основные термины и понятия, вводное руководство
Прежде, чем начать работать с Гит, нужно понять, что такое репозиторий, коммит и ветка.
Репозиторий – это место, где хранится код или другие данные, а также история их изменений. Программа Гит работает локально и вся информация хранится на вашем компьютере, но также можно использовать интернет сервисы. Самый популярный из них Гитхаб. Есть ещё два достаточно известных: Bitbucket и GitLab.
Коммит – это снимок состояния проекта в какой-то определённый момент времени. У него есть уникальный идентификатор и комментарии.
Ветка – это история внесённых в проект изменений. Она имеет своё название и состоит из коммитов. В репозитории может быть несколько веток, которые ответвляются от других веток или сливаются с ними.
Принцип работы Git
Покажем наглядно, как устроена система хранения Гит, на примере простого рисунка.
Здесь кружками обозначены комммиты, а стрелочки показывают, какой из них на какой ссылается.
Так как каждый ссылается на предыдущий, С3 – это самый новый, С2 более ранняя версия и так далее, до самой первой в этой ветке С0. Это главная ветка, которую обычно называют master.
Прямоугольник, с надписью main* внутри, показывает над каким коммитом вы сейчас работаете. На рисунке вы видите простой граф, в котором одна ветка и четыре коммита. Гит способен работать и со сложными графами, включающими в себя несколько веток, которые могут сливаться в одну.
Установка Git
Git – это консольная утилита, которая может работать под операционными системами Windows, Mac OS и Linux. Расскажем, как установить её под каждую из них.
Для установки под ОС Windows нужно скачать приложение с официального сайта https://git-scm.com/downloads и установить его.
Если у вас Mac OS и установлен менеджер пакетов Homebrew, введите команду:
brew install git
Если Homebrew не установлен, то выполните:
git —version
После этого, в появившемся окне вам будет предложено установить Command Line Tools. Вместе с этой утилитой установится и Гит.
Для Linux Debian и других дистрибутивов, основанных на этой версии, например, Ubuntu или Mint, для установки требуется выполнить следующую команду:
sudo apt install git
Для Linux CentOS нужно ввести:
sudo yum install git
Что такое Git, установка и настройка — инсталляция:
Предварительная настройка Git
После установки Гит его нужно настроить так, чтобы каждый раз, при создании коммита, указывалось имя автора. Для этого запускаем git и выполняем команду:
git config —global user.name «Автор«
Здесь вместо «Автор» задаём своё имя, например, «Ivan_Petrov». После этого можно установить адрес электронной почты следующей командой:
git config —global user.email «You_adr@email.com»
В этом случае также вместо «You_adr@email.com» указываем реальный адрес своей электронной почты.
Создание первого репозитория в Git
Чтобы создать репозиторий вначале перейдём в папку проекта. Например, в Windows это может быть D:/GitProject. Вводим команду:
cd d:\GitProject
После этого создаём репозиторий:
git init
После этого добавляем все файлы:
git add —all
Чтобы добавить конкретный файл вводим:
git add имя_файла
Теперь можно создавать коммит:
git commit -m «комментарий»
Некоторые замечания по созданию репозитория:
- В репозитории может быть много файлов и подпапок (в основном это обычная папка).
- Лучше всего иметь отдельный репозиторий для каждого проекта.
- Не создавайте папки для репозитории внутри другого репозитория (избегайте репозиториев матрёшек!).
- Изменения, сделанные в папках репозитория, «отслеживаются» Git, но эти изменения должны быть добавлены в репозиторий, чтобы их можно было контролировать или записывать.
- Вы можете контролировать элементы, за которыми «наблюдает» Git. Лучше всего игнорировать очень большие наборы данных или временные файлы.
Когда нужно делать коммит
Коммиты в Git рекомендуется делать в следующих случаях:
- в проект добавлен новый функционал;
- исправлены все ошибки;
- на сегодня вы завершаете работу, и хотите сохранить сделанные изменения.
Совместная работа над проектами Git
Допустим вы с знакомыми придумали новый проект и решили разделить обязанности. Один будет отвечать за функционал, другой за оформление и дизайн, третий за регистрацию, авторизацию и безопасность. В этом случае вам потребуется ветвление.
Как уже говорилось, ветка – это набор коммитов идущих последовательно один за другим. Основная ветка называется master. Другие ветки предназначены для реализации новых функций или исправления ошибок. Таким образом, в отдельной ветке можно вносить любые изменения, а потом объединять их с основной.
Многие специалисты не советуют создавать коммиты в основной ветке, а рекомендуют создавать новую, делать в ней изменения и после этого сливать её с master.
Чтобы завести новую ветку нужно выполнить команду:
git branch bugFix
Это также можно сделать следующей командой:
git checkout –b bugFix
Второй способ отличается от первого тем, что в этом случае после выполнения команды вы сразу попадаете в созданную ветку.
Новую ветку лучше назвать кратким, но в то же время достаточно ёмким названием и понятным., чтобы предотвратить путаницу в проекте. При использовании своей системы можно указывать идентификатор перед именем задачи. Также не забывайте в каждом создаваемом коммите оставлять свой комментарий, в котором должна быть указана суть изменений.
Для того, чтобы перейти из одной ветки в другую, нужно выполнить следующую команду:
git checkout new_1
После окончания работы изменения, внесённые в текущую ветку, нужно слить в основную, masters. Для этого сначала переходим в основную ветку, используя команду:
git checkout master
После этого обновляем локальную ветку:
git pull origin master
Теперь можно сливать ветки:
git merge bugFix
Эта команда добавляет изменения из ветки, прописанной в команде (bugFix), в ту ветку, в которой вы находитесь, в данном случае master.
Для просмотра текущего состояния ветки требуется ввести команду:
git status
Чтобы другие пользователи, работающие над проектом, увидели сделанные изменения, нужно отправить их на сервер. Для этого нужно сначала перейти в ту ветку, которую нужно отправить на гитхаб. Чтобы войти в master выполните команду:
git checkout master
После этого можно отправить её на сервер Гитхаб:
git push origin master
Чтобы другой человек получил доступ к проекту нужен сервис для хранения кода, например, Гитхаб.
Если вы недавно присоединились к проекту, и вам нужно загрузить его к себе, выполните команду:
git clone https://github.com/…/….git
Здесь https://github.com/…/….git – адрес репозитория. Его можно получить, открыв нужный проект, и кликнув по зелёной кнопке «Code».
Важный совет!
Прежде чем создавать новую ветку рекомендуется обновить masters на локальном компьютере. Для этого войдите в нужную ветку и выполните такую команду:
git pull origin master
В результате актуальные изменения загрузятся из гитхаб. Этим же способом можно обновить любую ветку. Чтобы актуализировать все имеющиеся ветки можно выполнить команду:
git pull
Распространённая проблема при работе с проектом Git
При попытке автоматически слить изменения может получиться так, что в обеих ветках в одной и той же строчке были внесены изменения в этом случае при выполнении команды:
git merge master
Появиться следующая ошибка:
Auto-merging Hello.py
CONFLICT (content): Merge conflict in Hello.py
Automatic merge failed; fix conflicts and then commit the result.
В этом случае нужно решать конфликт вручную. Для этого откройте файл, в котором произошла ошибка, в нашем случае это Hello.py, разберитесь в чем дело и устраните неполадки. После этого добавьте исправленный файл с помощью команды:
git add Hello.py
И создайте новый коммит:
git commit -m «Merged conflict»
Полезные команды — Git commands
Узнать, чем дна ветка отличается от другой можно с помощью команды:
git diff <первая_ветка> <вторая_ветка>
Чтобы удалить лишнюю ветку введите:
git branch -d <имя_ветки>
Для просмотра истории ветки есть такая команда:
git log
Посмотреть помощь по самым популярным командам:
git help
Получить подсказку по конкретной команде:
git help <имя_команды>
Git и GitHub курс для новичков — что нужно знать об установке, как установить, коммиты, репозиторий, команды, как создавать, удалять и вносить изменения в ветки:
Программы с графическим интерфейсом для работы с Git
Управлять версиями ПО проще не через командную строку, а с помощью графического интерфейса.
Некоторые среды разработки и текстовые редакторы имеют графический интерфейс для работы с Git. Но есть также и специальные программы, перечислим некоторые из них:
- GitHub Desktop – это графическое приложение, предназначенной для работы с утилитой Git и сервисом Гитхаб, оно может клонировать и загружать на жёсткий диск репозитории, а также управлять изменениями и делать другие полезные вещи.
- Sourcetree – клиент Git для операционных систем Windows и Mac, который упрощает взаимодействие с репозиториями и распространяется бесплатно.
- GitKraken – это удобный графический клиент для Windows, Linux и MacOs, который поддерживает сервисы GitHub, GitLab и Bitbucket. С его помощью можно не только решать базовые задачи, но и выполнять более сложные операции, например, объединять и переставлять коммиты, объединять ветки, переписывать историю.
Расскажем о каждой из них более подробно.
GitHub Desktop
GitHub Desktop — это приложение для вашего персонального компьютера, которое позволяет напрямую взаимодействовать с сервисом Гитхаб. Этот инструмент позволяет управлять версиями с помощью графического интерфейса ускоряя рабочий процесс разработки. GitHub
Desktop позволяет взаимодействовать с Git без использования командной строки, используя только интерфейс приложения.
Стоит отметить, что приложение GitHub Desktop не может делать все, что можно сделать с помощью командной строки, но сам пользовательский интерфейс предлагает основные команды Гит.
GitHub Desktop работает для всех популярных операционных систем, в том числе Windows, Linux и macOs.
Расскажем, как установить GitHub Desktop и работать с этим приложением.
Чтобы использовать сервис GitHub и приложение GitHub Desktop, понадобится создать учётную запись на Гитхаб, если её у вас ещё нет. Для этого перейдите на GitHub. В правом верхнем углу вы увидите кнопку с надписью «Sign up».
Нажмите на неё, чтобы перейти на следующую страницу. Нужно ввести свои данные, включая адрес электронной почты, имя пользователя и пароль.
На следующем этапе будет предложено подтвердить свою учётную запись, нажав на ссылку внутри электронного письма, пришедшего на указанный адрес. После проверки учётная запись GitHub будет создана, и вы сможете начать использовать платформу.
Настроив учетную запись Гитхаб, вы готовы установить приложение GitHub Desktop на персональный компьютер. Для этого в браузере откройте новую вкладку и перейдите на станицу загрузки приложения.
Пользователям Windows нужно нажать большую фиолетовую кнопку с надписью «Загрузить для Windows», но если вы пользователь Mac, нужно найти под кнопкой строку с надписью macOS и щёлкнуть по ней. Должна быть установлена macOS 10.12 или новее или 64-разрядная версия Windows.
После загрузки нужно будет установить приложение, а затем войти в систему с учётной записью, созданной на предыдущем этапе. Не обязательно сразу входить в свою учётную запись, но лучше сделать это сейчас.
Чтобы создать новый репозиторий откройте GitHub Desktop и щелкните второе поле внизу, с надписью «Create a New Repository on your Hard Drive».
Появится всплывающее окно, которое нужно заполнить — начните с присвоения имени первому репозиторию.
После того, как выбрали имя, также нужно будет выбрать где он будет располагаться на компьютере. Вы также можете поставить галочку в поле с надписью «Initialize this repository with a README», если хотите позже изменить сам файл README.
После этого нажмите «Create Repository». В результате вы создали новый репозиторий Git с помощью приложения GitHub Desktop без использования браузера.
Вверху новой страницы вы увидите название репозитория и ветку. По сути, сейчас репозиторий доступен только на вашем компьютере.
Чтобы опубликовать его, нам нужно щёлкнуть «Publish Repository». Теперь новый репозиторий появится в вашем профиле на сервисе github.
Можете использовать приложение GitHub Desktop для создания ветки проекта. Для этого нажмите «Current Branch», а затем в списке ветвей выберите нужную ветвь, назовите ее и нажмите «Create».
Чтобы переключиться между светлым и темным фоном, перейдите в «Options», «Appearance».
Можете использовать настольное приложение для создания задач для совместной работы над проектами с другими. Вопросы позволят отслеживать идеи и обсуждать любые изменения в ваших проектах. Чтобы создать задачу, в строке меню используйте меню «Repository», затем нажмите «Create Issue».
Кроме этого можно запустить GitHub Desktop из командной строки. Для этого откройте командную строку и введите Github. Также можете запустить GitHub Desktop для определённого репозитория. Просто введите Github, а затем путь к репозиторию.
Sourcetree
SourceTree — это бесплатное приложения для работы с сервисами GitHub, BitBucket и Mercurial. Он доступен для платформ под управлением Windows и iOS. Sourcetree удобен для новичков. Он имеет интуитивно понятный графический интерфейс для репозиториев и позволяет использовать всю мощь Git через упрощённый интерфейс.
Чтобы установить SourceTree, нужно скачать инсталляционный файл с официального сайта и запустить его. В процессе установки нужно будет разрешить приложению вносить изменения на жёсткий диск, согласиться с лицензионным соглашением.
Также в процессе установки SourceTree может спросить, хотите ли вы установить какое-либо дополнительное программное обеспечение git. Вы должны сказать «Да» и установить это ПО.
Подключиться к сервису Гитхаб можно двумя способами:
- Через протокол авторизации OAuth.
- С помощью ключа SSH.
Расскажем о каждом из них.
Первый способ — подключить GitHub с удаленной учетной записью. Разрешаете SourceTree подключить вашу учетную запись GitHub к OAuth. Это самый простой способ подключения GitHub к SourceTree.
- Сначала кликните «Add an account».
- Затем выберите GitHub для хостинга. Предпочтительный протокол и аутентификацию не меняйте, то есть оставьте HTTPS и OAuth. Затем нажмите «Refresh OAuth Token». Приложение автоматически откроет веб-страницу в браузере и запросит данные для входа в учётную запись GitHub. Если уже ранее входили в свою учётную запись GitHub в этом браузере, данный шаг будет пропущен.
- Кликните по «Authorize atlassian», чтобы разрешить SourceTree доступ к вашей учётной записи GitHub.
- После этого должны увидеть сообщение об успешном завершении аутентификации. Нажмите «ОК».
После этого сможете просмотреть весь свой репозиторий в SourceTree, нажав на свою учётную запись.
Второй способ — подключить GitHub с ключом SSH. Для этого нужно сгенерировать пару ключей SSH. Это закрытый и открытый ключ. Открытый ключ используется в учётной записи GitHub. С другой стороны, закрытый ключ будет добавлен в список ключей на вашем компьютере.
Далее следуем инструкции:
- Чтобы сгенерировать пару ключей SSH, перейдите в меню «Tools» и нажмите «Create or Import SSH Keys».
- Нажмите «Generate» в окне генератора ключей PuTTY.
- Переместите курсор мыши в пустое место, и перемещайте курсор мыши до окончания генерации.
- После того, как вы закончите генерацию ключа SSH, задайте пароль для своего ключа SSH.
- Сохраните открытый ключ и закрытый ключ.
- Не закрывайте генератор ключей PuTTY. Войдите в свою учётную запись GitHub, щёлкните значок своего аватара в правом верхнем углу, затем нажмите «Settings».
- Нажмите на «SSH and GPG keys» и выберите «New SSH key».
- Дайте название своему ключу SSH и скопируйте открытый ключ из генератора ключей PuTTY в поле ключа. После этого нажмите «Add SSH Key».
- Вернитесь в SourceTree, перейдите в «Tools» и нажмите «Launch SSH Agent».
- Через время щёлкните маленький значок с монитором на панели задач.
- В результате появится список ключей. Нажмите «Add Key», чтобы добавить закрытый ключ, который вы сохранили ранее.
Теперь вернитесь на страницу репозитория GitHub и попробуйте его клонировать с помощью SSH.
Что такое Github, как пользоваться, как создать проект, управление и настройка
GitKraken
GitKraken – это ещё одно приложение, предназначенной для работы с различными системами контроля версий с помощью GUI.
Для начала работы необходимо зарегистрироваться на GitHub и установить приложение GitKraken.
При запуске приложение нужно ввести свой логин и пароль от сервиса GitHub. Чтобы не вводить пароль каждый раз, нужно настроить ключ SSH. Если у вас ещё нет созданного ключа SSH, можете следовать руководству GitHub по созданию нового ключа.
Получив ключ SSH, можете добавить его в свою учетную запись GitHub. Для этого выберите «File» потом «Preferences» в главном меню. Затем выберите «Authentication» и укажите пути для ваших открытых и закрытых ключей.
Первым шагом в публикации любого контента на GitHub является создание локального репозитория для отслеживания работы. Эта папка будет содержать все файлы, которые вы хотите опубликовать на GitHub.
Необходимо следовать инструкции:
- Чтобы создать новый репозиторий в GitKraken, выберите в главном меню «File» затем «Init Repo». Будет несколько вариантов для разных типов репозиториев, выберите «Local Only».
- Затем выберите папку, которая будет вашим новым репозиторием. Можете выбрать пустую папку или папку, в которой уже есть файлы; вы не потеряете свои изменения.
- Следующее диалоговое окно также содержит настройки для шаблонов по умолчанию и файлов лицензий. Оставьте все как есть.
- Щелкните «Create Repository».
Вам не нужна учётная запись Гитхаб для локального использования Git (или GitKraken) на компьютере. Однако, если планируете сотрудничать с другими пользователями, либо использовать файлы с нескольких компьютеров, потребуется использовать такой хост, как Гитхаб.
Чтобы создать репозиторий на GitHub, то после нажатия «Init Repo» выберите строку «GitHub» и заполните появившееся окно следующим образом:
- Account – имя вашей учетной записи GitHub.
- Name – имя репозитория. Составьте его из букв, цифр и знаков подчёркивания.
- Description – описание того, что будет содержать этот репозиторий.
- Access – доступ к удаленному местоположению, независимо от того, должен ли он быть видимым для всех или оставаться открытым только для вас и людей, которых вы добавляете в качестве соавторов
- Clone after init – оставьте отмеченной эту опцию, что сделает репозиторий доступным для вас на GitHub.
- Where to clone to – выберите место на компьютере, где должна быть размещена вновь созданная папка с репозиторием.
- Наконец, нажмите кнопку «Create Repository and Clone».
После этого новая папка появиться в левом верхнем углу интерфейса GitKraken, и мы можем увидеть больше информации о ней в левом столбце.
При подключении GitHub к GitKraken убедитесь, что авторизация выполняется либо в Chrome, либо в Firefox, а не в Internet Explorer.
Роботы для трейдинга на GitHub — Bot Github Open Source
Система контроля версий Git используется, в том числе, и для разработки торговых роботов. Приведём несколько примеров таких разработок, которые можно скачать и использовать.
Python Trading Robot
Торговый робот, написанный на Python, доступен по ссылке https://github.com/areed1192/python-trading-robot, который может запускать автоматические стратегии с использованием технического анализа. Робот предназначен для имитации нескольких распространенных сценариев:
Он может рассчитывать общие показатели риска, связанные с портфелем, и давать обратную связь в режиме реального времени во время торговли.
Позволяет работать с таблицей данных в реальном времени, в которой содержатся как исторические, так и текущие цены по мере их изменения. Он сделает процесс хранения данных простым и с быстрым доступом. Кроме того, он будет настроен таким образом, чтобы вы могли легко просматривать свои финансовые данные по мере их поступления и при необходимости проводить дальнейший анализ.
Содержит индикаторы, которые используют как исторические цены, так текущие. Поможет создать собственные индикаторы, рассчитать их, а затем обновить их значения по мере поступления новых цен.
Торговый бот Cassandre
Торговый робот Cassandre ссылка на ГитХаб https://github.com/cassandre-tech/cassandre-trading-bot — способен позаботится о подключении к бирже, учетных записях, ордерах, сделках и позициях, поэтому сможете сосредоточиться на построении своей стратегии.
Каждый выпуск тестируется для работы с биржами Kucoin, Coinbase и Binance.
С его помощью легко создать свою стратегию, для этого нужно просто задать условия, когда вы хотите создать короткие или длинные позиции и установить правила.
Имеется загрузчик для тестирования бота на исторических данных. Во время тестов Cassandre будет импортировать данные и добавлять их в вашу стратегию.
Cassandre поможет построить стратегию на основе библиотеки технического анализа ta4j.
EA31337 Libre
EA31337 Libre по ссылке https://github.com/EA31337/EA31337-Libre — это бесплатный мультистратегический торговый робот Forex, написанный на MQL.
Торговый робот поставляется с более чем 35 стратегиями на выбор. Каждая стратегия может анализировать рынок на разных таймфреймах независимо. Анализ рынка основан на популярных технических индикаторах. Также можно писать свои собственные стратегии.
Если вам понравилась статья, то подписывайтесь на мой телеграм канал.
Robot kevirite. Banavo