Как установить git на python
Перейти к содержимому

Как установить git на python

  • автор:

1.5 Введение — Установка Git

Прежде чем использовать Git, вы должны установить его на своём компьютере. Даже если он уже установлен, наверное, это хороший повод, чтобы обновиться до последней версии. Вы можете установить Git из собранного пакета или другого установщика, либо скачать исходный код и скомпилировать его самостоятельно.

Примечание

В этой книге используется Git версии 2.8.0. Хотя большинство используемых нами команд должны работать даже в старых версиях Git, некоторые из них могут не работать или действовать немного иначе, если вы используете старую версию. Поскольку Git отлично справляется с сохранением обратной совместимости, любая версия после 2.8 должна работать нормально.

Установка в Linux

Если вы хотите установить Git под Linux как бинарный пакет, это можно сделать, используя обычный менеджер пакетов вашего дистрибутива. Если у вас Fedora (или другой похожий дистрибутив, такой как RHEL или CentOS), можно воспользоваться dnf :

$ sudo dnf install git-all

Если же у вас дистрибутив, основанный на Debian, например, Ubuntu, попробуйте apt :

$ sudo apt install git

Чтобы воспользоваться дополнительными возможностями, посмотрите инструкцию по установке для нескольких различных разновидностей Unix на сайте Git https://git-scm.com/download/linux.

Установка на Mac

Существует несколько способов установки Git на Mac. Самый простой — установить Xcode Command Line Tools. В версии Mavericks (10.9) и выше вы можете добиться этого просто первый раз выполнив ‘git’ в терминале.

$ git --version

Если Git не установлен, вам будет предложено его установить.

Если Вы хотите получить более актуальную версию, то можете воспользоваться бинарным установщиком. Установщик Git для OS X доступен для скачивания с сайта Git https://git-scm.com/download/mac.

OS X инсталлятор Git

Рисунок 7. OS X инсталлятор Git

Установка в Windows

Для установки Git в Windows также имеется несколько способов. Официальная сборка доступна для скачивания на официальном сайте Git. Просто перейдите на страницу https://git-scm.com/download/win, и загрузка запустится автоматически. Обратите внимание, что это отдельный проект, называемый Git для Windows; для получения дополнительной информации о нём перейдите на https://gitforwindows.org.

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

Установка из исходников

Многие предпочитают устанавливать Git из исходников, поскольку такой способ позволяет получить самую свежую версию. Обновление бинарных инсталляторов, как правило, немного отстаёт, хотя в последнее время разница не столь существенна.

Если вы действительно хотите установить Git из исходников, у вас должны быть установлены следующие библиотеки, от которых он зависит: autotools, curl, zlib, openssl, expat и libiconv. Например, если в вашей системе используется dnf (Fedora) или apt-get (системы на базе Debian), вы можете использовать одну из следующих команд для установки всех зависимостей, используемых для сборки и установки бинарных файлов Git:

$ sudo dnf install dh-autoreconf curl-devel expat-devel gettext-devel \ openssl-devel perl-devel zlib-devel $ sudo apt-get install dh-autoreconf libcurl4-gnutls-dev libexpat1-dev \ gettext libz-dev libssl-dev

Для того, чтобы собрать документацию в различных форматах (doc, html, info), понадобится установить дополнительные зависимости:

$ sudo dnf install asciidoc xmlto docbook2X $ sudo apt-get install asciidoc xmlto docbook2x

Примечание

Пользователи RHEL и производных от неё (таких как CentOS или Scientific Linux) должны подключить репозиторий EPEL для корректной установки пакета docbook2X

Если вы используете систему на базе Debian (Debian/Ubuntu/Ubuntu-производные), вам так же понадобится установить пакет install-info :

$ sudo apt-get install install-info

Если вы используете систему на базе RPM (Fedora/RHEL/RHEL-производные), вам так же понадобится установить пакет getopt , который уже установлен в системах на базе Debian:

$ sudo dnf install getopt

К тому же из-за различий имён бинарных файлов вам понадобится сделать следующее:

$ sudo ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi

Когда все необходимые зависимости установлены, вы можете пойти дальше и скачать самый свежий архив с исходниками из следующих мест: с сайта Kernel.org https://www.kernel.org/pub/software/scm/git, или зеркала на сайте GitHub https://github.com/git/git/releases. Конечно, немного проще скачать последнюю версию с сайта GitHub, но на странице kernel.org релизы имеют подписи, если вы хотите проверить, что скачиваете.

Затем скомпилируйте и установите:

$ tar -zxf git-2.8.0.tar.gz $ cd git-2.8.0 $ make configure $ ./configure --prefix=/usr $ make all doc info $ sudo make install install-doc install-html install-info

После этого вы можете получать обновления Git посредством самого Git:

$ git clone git://git.kernel.org/pub/scm/git/git.git

Git и введение в Python

Два конспекта о том, как начать пользоваться гитом и гитхабом:

  • ancatmara.gitbooks.io
  • github.com/ElizavetaKuzmenko

Установка Python

Обращайте внимание на версию питона! Мы пишем на Python 3, предпочтительно версии 3.5 и новее.

Windows

macOS

https://brew.sh/ — установка через менеджер пакетов Homebrew, требует использования командной строки. После установки самого Homebrew выполните brew install python

Linux

Если вы используете современный популярный дистрибутив, то, скорее всего, у вас уже есть Python 3. Проверьте версию python3 —version

iOS

Pythonista — платное приложение (749₽) с полнофункциональным Python 3, но с ограниченной поддержкой сторонних модулей

Android

Pydroid 3 — приложение с полнофункциональным Python 3 (но с рекламой). Требует Android 4.4

Основы языка Python

Арифметика

Все действия этого раздела выполняйте прямо в интерпретаторе Python, используя idle или набрав python3 в терминале (выйти можно командой exit() ).

IDLE console screenshot

Базовые математические операции в Python делаются очень просто. Сложение и вычитание:

>>> 2 + 3 5 >>> 5 - 4 1 

Можно указывать несколько операций подряд:

>>> 4 - 5 + 3 2 

Умножение и деление совершается с помощью операторов * и / , а порядок действий привычный: сначала совершаются операции умножения и деления, а потом сложения и вычитания. Другой порядок действий указывается с помощью круглый скобок () .

>>> # Какой будет результат следующих вычислений? >>> ((6 - 7) * 2 + 3 * 5) / 2 

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

До этого мы работали с целыми числами, пора перейти к десятичным дробным числам. Дробный разделитель в Python стандартен для англоязычного мира — это точка.

>>> 3.14 * 2.62 8.2268 

Указанные операторы, в целом, работают так как мы от них ожидаем. Более интересные операторы — это остаток от деления % и целая часть // :

>>> 3 // 2 1 >>> 3 % 2 1 >>> -3 // 2 -2 >>> -3 % 2 1 >>> 3.1 // 2 1.0 >>> 3.1 % 2 1.1 >>> 3.14 % 1.57 0.0 

Символ # можно использовать и для комментариев, идущих после кода. Заметьте, что все выражения отделены друг от друга началом новой строки, обычно Python считывает код построчно.

И еще один важный оператор — это возведение в степень:

>>> 2**3 8 >>> 2**-3 0.125 

Скипты и функция print

Для того, чтобы сохранить результат нашего программистского труда, понадобиться создать файл сценария (или, проще говоря, скрипт). Файлы со скриптами для Python обычно имеют расширение .py , а их имена лучше составлять из латинских букв, цифр и симоволов подчеркивания _ . Создадим файл arithmetic.py со следующим содержимым:

5 + 4 # ничего не напечатает print(3 + 2) # напечатает «5» 

IDLE editor screenshot

В IDLE создайте новый файл File -> New File. Этот файл можно запустить с помощью пункта меню Run -> Run Module или нажатием клавиши F5. Попутно вам предложат куда-нибудь сохранить ваш новый скрипт.

print() — это одна из встроенных функций языка Python. Конечно, с её помощью можно печатать не только числа.

>>> print('Hello world') # Напечатает Hello world 

Здесь мы впервые сталкиваемся со строками. Пока что нам достаточно знать, что в Python строки задаются любым выражением внутри одинарных или двойных кавычек.

Переменные

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

Создадим переменную number , содержащую целое число 1 и распечатаем её

number = 1 print(number) # напечатает «1» print('number') # напечатает «number» print('number =', number) # напечатает «number = 1» 

Ещё один пример:

>>> pi = 3.1415 >>> radius = 2.5 >>> length = 2 * pi * radius >>> area = pi * radius**2 >>> print('Круг с радиусом ', radius, 'имеет длину', length, 'и площадь', area) Круг с радиусом 2.5 имеет длину 15.707500000000001 и площадь 19.634375000000002 

К этому моменту мы познакомились с тремя типами переменных: целыми числами, дробными десятичными числами (а точнее с числами с плавающей точкой) и со строками. Между всеми этими типами переменных можно делать преобразования с помощью функций int() (от integer number), float() (от floating-point number) и str() (от string), соответственно. Простой пример:

>>> pi_string = '3.1415' >>> pi = float(pi_string) >>> three = int(pi) >>> print(three) 3 

Просто про Git

Git — распределенная система контроля версий, она облегчает работы с исходными кодами. Система управления версиями позволяет хранить несколько версий одного и того же документа, при необходимости возвращаться к более ранним версиям, определять, кто и когда сделал то или иное изменение, работать с этими изменениями, обеднять, добавлять, отменять.

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

Системы контроля изменений встроена почти в каждый текстовый редактор. Когда в «Word» или в «sublime text», «VScode», нажимаем комбинацию из клавиш: `ctrl + z` — тогда в последние изменения в файле отменяются, а если мы нажмем: `ctrl + shift + z` — в таком случае отмененные изменения вновь применяться.*

 * "ctrl + z" - в ОС windows для OC linux или macOS - "cmd + z" "ctrl+shift+z"-в ОС windows для OC linux или macOS - "cmd+shift+z" 

Другими словами, отменяя изменения мы делаем «шаг назад», вновь применяя отмененные изменения мы делаем «шаг вперед» по уже протоптанной нами дорожке. Но само собой это работает только в том случае если мы «ходим» по «протоптанной дорожке».

Вернемся к git, если работая с классическими редакторами мы имеем только «одну тропинку», то git позволяет нам создавать много таких тропинок и по необходимости перепрыгивать с одной на другую, мы можем создавать новую тропинку из старой а потом совмещать их в одну. С git мы можем жестко фиксировать каждый шажок — изменение, и как-будто используя ‘ctrl+z’ откатываться на предыдущий шаг и т.д. Но довольно аналогии, надеюсь вы поняли общую концепцию git. В любом случае хочу посоветовать следующие материалы:

  • https://git-scm.com/doc — документция по git (есть на русском)
  • Version Control with Git: Powerful tools and techniques for collaborative software development
  • Git Internals Peepcode PDF
  • Pro Git

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

Работа с git репозиторием может строиться по нескольким сценариями:

  • Нет локального репозитория ни удаленного
  • Есть удалленный репозиторий но нет локального
  • Есть локальный репозиторий и удаленный — классическая работа

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

Нам необходимо в консоле нашей ОС зайти в папку проекта, и первым делом инициализировать в папке наш репозиторий — объявить что данная папка это репозиторий, инициализация происходи одной командой:

git init

* Внимание: инициализировать репозиторий необходимо один раз на одной компьютере, и только в корневой папке проекта

После создания репозитория, нам необходимо сообщить git в каких файлах ему необходимо отслеживать изменения, но проект новый и количество файлов может быть огромным, для экономии временни мы добавим все файлы и все папки находящиеся в корневой директории, для этого используем команду:

git add . 

* Внимание: данная команда добавит для отслеживания все объекты в директории, иногда это может быть не желательно т.к. директория проекта может содержать объекты которые не надо добавлять в git и в репозиторий, например: файл БД, конфигурационные файлы с паролями, медиа файлы (картинки, видео, аудио файлы)

После указания гиту файлов для отслеживания, мы должны зафиксировать (закомитить — от слова комит, commit) изменения в выше указанных файлах, сделаем это командой:

git commit -m "first commit"

* примечание: данную команду всегда используем с флагом «-m» и аргументом, который является комментарием

Далее нам необходимо указать адрес удаленного сервера, где будет храниться «главная копия» нашего репозитория.

git remote add origin git@github.com:username/name_project.git 

* примечание: адрес можно получить при создании репозитория, через интерфейс

После фиксирования всех изменений, нам необходимо отправить изменения на сервер (сделать первый push), делать мы это будем с указанием новой ветки т.к. на сервере нет нечего и не создано пока ни одной ветки.

git push -u origin master

Готово! Мы создали репозитория и сохранили (запушили) его на сервере.

Рассмотрим сценарий, когда нас пригласили работать над новым для нас, проектом, но проект уже существует в удаленном репозитории, и нам нужно клонировать репозиторий к себе локально. Клонирование репозитория происходи следующей командой:

git clone git@github.com:username/name_project.git

* примечание: адресы репозитория нам должен сообщить хозяин репозитория

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

После того как вы внесли изменения в проект, нам необходимо сообщить git в каких файлах ему необходимо отслеживать изменения, но проект новый и количество файлов может быть огромным, для экономии временни мы добавим все файлы и все папки находящиеся в корневой директории, для этого используем команду:

git add name_file.py

* примечание: также можно указывать список файлов через пробел, например: «git add file1.py file2.py file3.py»

Создаем комит — фиксируем все изменения из файлах которые мы добавили предыдущей командой ‘добавить’.

git commit -m "first commit" 

* Обратите внимание, что вводить комментарий необходимо каждый раз, в ваших же интересах писать как можно более осмысленны message 🙂

Работая в ветке которая уже есть на удаленном сервере, необходимо помнить что её могут изменить, и ваша локальная версия ветки может устареть, для этого необходимо скачать последние версию с сервера, что можно сделать командой:

git pull 

* примечание: При работе с данной командой может возникнуть конфликт — двух версий (между вашей локальной копией и копией на сервере), требующего решения

Пройдя весь путь, нам теперь необходимо сохранить наши изменения на сервере, возвращаясь к началу напоминаю что git — распределенная система, чтобы все кто работает над проектом вместе с вами увидели ваши изменения, и просто чтобы сделать резервную копию на удаленном сервере, мы должны послать (в дословном переводе «толкнуть») наши изменения, командой:

git push

* Надо помнить, при работе с веткой внося изменения, мы создаем новую версию, но тем временем кто-то тоже может работать с вашей веткой и обновлять версию на сервере быстрее и чаще чем вы, поэтому не забывайте делать «git pull»

Мы прошли сценарий от начала и до конца, теперь такой путь нам надо будет повторять раз за разом, вы быстро привыкните и освоитесь. А когда начнете пользоваться git через gui интерфейс, весь этот путь вы будете пробивать менее чем за минуту.

Некоторые другие другие команды git.

Работа с git предполагает наличие нескольких веток

Чтобы посмотреть список всех локальных «веток», воспользуемся командой:

git branch 

* примечание: команда ‘git branch’ выведет список лишь тех веток которые вы создали на локальной машине, они отличаются от тех что хранятся на сервере

Переключение между ветками

git checkout

* примечание: в качестве аргумента, куда переключаться, можно указывать не только имя ветки но и hash commit

Работая с несколькими ветками и переключаясь между ними может появляться

git checkout .

* примечание: будте осторожны используя данную команду, она удалит все не за комментируемые (зафиксированные) измененния

Для просмотра не зафиксированных изменений, используем команду:

git status 

Более краткую версию можно прочитать здесь.

Новости
16 ноября 2019

Учимся использовать API сервиса Yandex SpeechKit

8 ноября 2019

Learn Python в Пензе

Настройка рабочей среды

Скачайте установочный файл Git for Windows со страницы загрузок и запустите его. На момент написания этого текста актуальной версией является 2.28.0. В процессе установки Вам будут заданы вопросы по конфигурации. В большинстве случаев подойдут рекомендуемые варианты.

Если в системе уже установлен редактор VS Code, то его можно выбрать в качестве редактора по умолчанию для Git:

git-setup-default-editor

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

git-setup-line-ending

Чтобы команды git были доступны во всех терминалах, следует выбрать рекомендуемый вариант для изменения переменной окружения PATH:

git-setup-PATH

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

> git usage: git [--version] [--help] [-C ] [-c =] [--exec-path[=]] [--html-path] [--man-path] [--info-path] [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare] [--git-dir=] [--work-tree=] [--namespace=] [] 

В качестве терминала в Windows 10 мы рекомендуем использовать PowerShell.

Теперь необходимо задать имя пользователя и адрес электронной почты:

> git config --global user.name "Ivan Petrov" > git config --global user.email i.petrov@nsu.ru

Git хранит настройки в файле ~\.gitconfig . У автора этот файл выглядит следующим образом:

[user] email = vit.vorobiev@gmail.com name = Vitaly Vorobyev [core] editor = \"[path-to-vscode]" --wait 

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

Источники

  • First-Time Git Setup

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *