Как установить программу из репозитория github

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

Одной из самых популярных систем управления версиями заслуженно считается Git. Многие проекты хранят свои файлы в репозиториях Git, а сайты GitHub и Bitbucket сделали обмен исходным кодом очень простым. В этой небольшой статье будет рассмотрена установка Git в Ubuntu. Мы рассмотрим два способа установки, а также начальную конфигурацию.

Установка Git с помощью пакетного менеджера

Самый простой способ установить Git в Ubuntu 20.04 или других версиях, это использовать пакетный менеджер apt и официальные репозитории Ubuntu. Это самый быстрый и простой метод, но вы получите не самую свежую версию.

Для установки Git с помощью пакетного менеджера. сначала обновим списки пакетов из репозиториев:

sudo apt update

Затем осталось загрузить и установить программу:

Как скачать git репозиторий c github

sudo apt install git

После этого программа будет установлена и вы можете переходить к ее настройке. Для просмотра версии выполните:

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

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

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

sudo apt update
sudo apt install build-essential libssl-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip

После того как все будет установлено вы можете скачать архив с самыми последними версиями исходного кода. Это можно сделать на странице релизов. Здесь есть как rc релизы, так и стабильные версии.

Когда выберите версию, нажмите кнопку Download zip. Или же скопируйте ссылку чтобы скачать с помощью терминала. Например, на данный момент самая последняя версия — 2.10.1. Вы можете использовать адрес файла вместе с wget, чтобы скачать исходники:

wget https://github.com/git/git/archive/v2.28.0.zip -o git.zip

Распакуйте только что загруженный файл с помощью unzip и переместитесь в каталог с файлами архива:

unzip git.zip
cd git-*

Дальше переходим к сборке программы и ее установке:

make prefix=/usr/local all
sudo make prefix=/usr/local install

После того как вы установили Git таким способом, вы можете просто ещё раз клонировать репозиторий и выполнить две последние команды для обновления. Для клонирования нужно знать URL репозитория. Например, для текущей ветки master, этот url будет выглядеть вот так:

git clone https://github.com/git/git

Затем просто соберите новую версию git с помощью тех же команд:

Читайте также:
Установить программу крипто про эцп

cd git
make prefix=/usr/local all
sudo make prefix=/usr/local install

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

Настройка Git в Ubuntu

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

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

Вы можете посмотреть установленные параметры с помощью команды:

git config —list

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

Здесь можно установить много других параметров, но именно эти два самые важные, потому что если вы попытаетесь что-то сделать когда они не установлены, то увидите предупреждение:

Выводы

Теперь вы знаете как выполняется установка Git Ubuntu 20.04. Мы рассмотрели два способа — простой и быстрый, а также сложный, но более гибкий. Если у вас остались вопросы спрашивайте в комментариях!

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник: losst.pro

Как начать работать с GitHub

Добавить SSH ключи

После этого гитхаб должен перестать ругаться на отсутствие прав доступа.

Часто используемые команды

  • git add файлы — добавляет файлы в индекс
  • git commit — отправляет из индекса в хранилище для дальнейшей отправки (git push) в удаленный репозиторий
  • git reset — файлы заменяет файлы в индексе файлами из последнего коммита
  • git checkout файлы — заменяет файлы проекта ни диске файлами из индекса
  • git push origin master — отправляет файл на сервер, чтобы не вводить каждый раз логин/пароль, воспользуйтесь флагом ‘-u’

Чтобы создать новую ветку, нужно использовать команду git branch [Название_ветки] . Если написать просто git branch — покажет список существующих веток.

git checkout [Название ветки] — выбор ветки

Чтобы создать ветку и сразу ее выбрать git checkout -b [Новая ветка]

Источник: mad-dog.ru

Как создать репозиторий на github

В статье также рассмотрено подключиться к созданному github репозиторию с локального компьютера и работать с проектом. Используется Ubuntu — с github можно работать также с любой другой Unix машины или Windows.

Как создать репозиторий на github

Установка git и создание локального репозитория

Работаем от имени пользователя root. Прежде всего устанавливаем git

Заходим на https://github.com и создаем пользовательский аккаунт, также создаем в графическом интерфейсе первый репозиторий (называем его test)

В консоли Ubuntu задаем имя пользователя, работающего с git и его адрес электронной почты.

git config — global user.name «exampleuser»

Создаем локальный каталог, который будет служить репозитоирем

переходим в каталог

Initialized empty Git repository in /home/admin/IT/python/py/.git/

После выполнения команды в каталоге появляется директория .git, в которой размещаются файлы. необходимые для корректной работы пакета

Как создать репозиторий на github и подключиться к нему

Далее нужно создать репозиторий на github в интерфейсе по ссылке.

Читайте также:
Как открыть документ pub если не установлена программа

github создание репозитория

Для репозитория выбирается имя, тип Public

Возвращаемся в консоль и добавляем рептозиторий в системе (подключаемся к удаленному). После адреса сайта указываем имя пользователя, затем — через / — название репозитория, .git

git remote add origin https://github.com/exampleuser/test.git

Далее пробуем передать данные из локального репозитория в удаленный

При этом возникает ошибка:

Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Из ее текста следует, что не добавлен SSH ключ и подключение к удаленному репозиторию невозможно.

Сгенерируем ключ и добавим его на github

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):

Вводим путь к ключу на сервере
Enter passphrase (empty for no passphrase):

Парольная фраза и ее повтор
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
72:d6:85:91:09:6d:61:ca:20:01:72:68:75:63:8b:9f [email protected]
The key’s randomart image is:
+—[RSA 4096]—-+
|..+oo=. .o++ |
|.+ +.oo o=o |
|. . . o.. . |
| . . . . |
| E. S . |
| + |
| |
| |
| |
+——————+

Вывод аналогичный приведенному выше будет означать, что ключ сгенерирован

Добавляем его в .ssh/id_rsa

Identity added: /root/.ssh/id_rsa (rsa w/o comment)

Копируем ключ, начинающийся с ssh-rsa и вставляем его в соответствующее поле в личном кабинете на github

Ошибка при подключении к github

Выбираем ‘SSH and GPG keys’

Добавть SSH ключ на github

Далее New SSH key (на скриншоте ключ уже добавлен)

После этого вновь пробует отправить данные

Counting objects: 3, done.
Writing objects: 100% (3/3), 216 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To [email protected]:exampleuser/testrepo.git
* [new branch] master -> master
Branch master set up to track remote branch master from origin.

Все получилось — данные были успешно переданы в созданный репозиторий на github.

Проверяем, создаем файл и добавляем в него произвольный текст (в данном случае добавлен ‘some text’)

Добавляем измененный файл

Файлы можно добавлять по одному, можно добавлять все сразу — команду можно выполнить вслед за предыдущей она ее продублирует

Делаем коммит, указывая после ключа -m комментарий

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

Username for ‘https://github.com’: exampleuser
Password for ‘https://[email protected]’:

Как только мы это сделаем отображаются следующая информация:

Counting objects: 3, done.
Writing objects: 100% (3/3), 215 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/exampleuser/test.git
* [new branch] master -> master

Теперь меняем содержимое единственного файла в репозитории — добавляем еще одну строку

git commit -m ‘Second commit’
[master c5b2de5] First commit
1 file changed, 2 insertions(+), 1 deletion(-)

и снова передаем информацию на github

Username for ‘https://github.com’: exampleuser
Password for ‘https://[email protected]’:
Counting objects: 3, done.
Writing objects: 100% (3/3), 253 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/exampleuser/test.git
1273b8c..c5b2de5 master -> master

В интерфейсе аккаунта на сайте можно видеть добавленный файл, коммиты и комментарии

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

Если не добавить

перед коммитом можно увидеть следующее сообщение, выделенное в консоли красным цветом:

On branch master
Changes not staged for commit:
modified: FILE.txt

Читайте также:
Как сохранить программу в скретч

no changes added to commit

Все системные сообщения очень информативны — в частности, при попытке «пушнуть» на github неизмененные файлы возникает сообщение «Everything up-to-date«

Username for ‘https://github.com’: exampleuser
Password for ‘https://[email protected]’:
Everything up-to-date

Создаем файл password и добавляем в него произвольное содержимое

git commit -m «added one more file»

[master c2a671f] added one more file
2 files changed, 2 insertions(+), 1 deletion(-)
create mode 100644 password

Отправляем информацию в удаленный репозиторий

Username for ‘https://github.com’: exampleuser
Password for ‘https://[email protected]’:
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (4/4), 318 bytes | 0 bytes/s, done.
Total 4 (delta 0), reused 0 (delta 0)
To https://github.com/exampleuser/test.git
c5b2de5..c2a671f master -> master

Отмена коммитов с отменой изменений, внесенных в файлы, и без них

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

[master dded43f] new one
1 file changed, 1 insertion(+), 1 deletion(-)

Отменяем последний коммит следующей командой

Просматриваем файл и убеждаемся в том, что изменения в нем сохранились несмотря на отмену коммита

Делаем коммит снова

Сейчас отменяем его с ключом — hard, его использование означает, что будет отменен коммит и изменения, внесенные в файл

HEAD is now at c2a671f added one more file

Отправляем данные на github

remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 3 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From https://github.com/exampleuser/test
* branch master -> FETCH_HEAD
c2a671f..d578a72 master -> origin/master
Updating c2a671f..d578a72
Fast-forward
password | 3 ++-

Клонирование репозитория с Github

Идем на другую машину (в тестовой среде был просто сменен пользователь командой su mailer, затем выполнен переход в его домашний каталог cd /home/mailer)

git clone https://github.com/exampleuser/test.git

Cloning into ‘test’…
remote: Counting objects: 10, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 10 (delta 0), reused 10 (delta 0), pack-reused 0
Unpacking objects: 100% (10/10), done.
Checking connectivity… done.

Переходим в каталог test

Редактируем файл password

git config — global user.name «testuser2017»

git commit -m «added by another user»

git commit -m «added by another user»[master d578a72] added by another user
1 file changed, 2 insertions(+), 1 deletion(-)

Отправляем на github

Username for ‘https://github.com’: exampleuser
Password for ‘https://[email protected]’:
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 293 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/exampleuser/test.git
c2a671f..d578a72 master -> master

Проверяем, что на github появилась информация о сделанном коммите, а файл обновился

Теперь авторизуемся на сервере с реквизитами пользователя от имени которого работа велась изначально и выполняем команду git pull origin master

remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 3 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From https://github.com/exampleuser/test
* branch master -> FETCH_HEAD
c2a671f..d578a72 master -> origin/master
Updating c2a671f..d578a72
Fast-forward
password | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Просматриваем файл password — видим, что изменения сделанные и закоммиченные другим пользователем сохранились.

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru