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, установка та налаштування – інсталяція: https://youtu.be/bkNCylkzFRk
Попереднє налаштування 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 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 курс для новачків – що потрібно знати про встановлення, як встановити, комміти, репозиторій, команди, як створювати, видаляти та вносити зміни до гілок: https: //youtu.be/zZBiln_2FhM
Програми з графічним інтерфейсом для роботи з 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.
- Після цього слід побачити повідомлення про успішне завершення автентифікації. Натисніть “OK”.
Після цього зможете переглянути весь свій репозиторій у 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. https://articles.opexflow.com/programming/chto-takoe-github-kak-polzovatsya.htm
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