Использование Git на Android (+Termux)

Как известно, Android хоть и основан на Linux, но в нем не существует механизма для работы с нативными пакетами, такими, например, как git. Но существуют другие способы работы с git-репозиториями (локальными и удаленными):

1) использовать специализированные приложения, реализующие функциональность git.

2) использовать нативный пакет git с помощью приложения Termux (для Android >=7), которое реализует Linux-подобную среду и терминал для взаимодействия с ней (основная статья о Termux).


Специализированные приложения

Вот примерный список приложений (на 2021 год), разработанных для работы с локальными и/или удаленными git-репозиториями.

Приложение

Достоинства

Недостатки

Описание

С клонированием и отправкой изменений на сервер

MGit

+все основные операции (clone, pull, commit, push)
+авторизация по паролю/ключу ssh
+список репозиториев
+обзов файлов репозитория
+управление ветками
+просмотр diff, merge файлов
+список коммитов

-кривой перевод на русский язык
-не всегда стабильно работает
-нет issues, PR

Продолжение проекта SGit
Open source (github)

Pocket Git (139р)

+все основные операции (clone, pull, commit, push)
+авторизация по паролю/ключу ssh
+список репозиториев
+обзов файлов репозитория
+управление ветками
+просмотр diff, merge файлов
+история коммитов в виде графика

-нельзя одной командой зафиксировать изменения сразу нескольких файлов (нужно отдельно каждый файл пометить как stage, а лишь потом делать коммит)
-довольно долго загружает список файлов, коммитов и др.

 

Green Git Client

+все основные операции (clone, pull, commit, push)
+авторизация по паролю/ключу ssh
+обзов файлов репозитория
+список коммитов
+управление ветками
+просмотр diff файлов

-ошибка при попытке push (не вылезло окно авторизации)

Продолжение проекта SGit
Проект заморожен (последнее обновление в 2019г)

Forker

   

Продолжение проекта SGit
Open source (github)
Проект закрыт

Agit

   

Open source (github)
Проект закрыт в 2014

SGit

   

Open source (github)
Проект закрыт в 2016

Без клонирования и отправки изменений

GitHub

+список репозиториев
+обзов файлов репозитория
+просмотр diff файлов
+управление issues, PR

-работа только с удаленным репозиторием (без клонирования)
-нет списка коммитов?
-нет commit и push

Клиент для сервиса GitHub

GitNex for Gitea

GitNex Pro for Gitea (339р)

+авторизация по паролю/ключу ssh
+несколько аккаунтов
+список репозиториев
+обзов файлов репозитория
+просмотр diff файлов
+управление issues, PR
+создание репозитория
+список коммитов
+есть режим offline
+поддержка markdown

-работа только с удаленным репозиторием (без клонирования)
-нет commit и push

Клиент для сервиса Gitea
Проект развивается
Open source (исходники)

Bitbasket

+обзов файлов репозитория
+список репозиториев
+список коммитов
+issues, PR

-работа только с удаленным репозиторием (без клонирования)
-нет commit и push

Клиент для сервиса Bitbucket
Проект заморожен (последнее обновление в 2019г)

Bitbeaker (исходники)

 

-ошибка при попытке войти:
“Ошибка получения данных с bitbucket.org.
Проверьте соединение с интернетом”

Клиент для сервиса Bitbucket
Проект заморожен (последнее обновление в 2017г)

LabCoat for GitLab

+просмотр коммитов
+обзов файлов репозитория
+управление issues, PR
и другое

 

Клиент для сервиса GitLab
Open source (gitlab)

GitFox for GitLab

+просмотр коммитов
+обзов файлов репозитория
+несколько аккаунтов
+управление issues, PR
+поддержка markdown
и другое

 

Клиент для сервиса GitLab
Open source (gitlab)

Другие: OpenHub, ForkHub, OctoDroid, GitPoint

   

Клиенты для сервиса GitHub

Для своих локальных репозиториев лично какое-то время использовал 2 продукта из первой категории: MGit и PocketGit. Но по мере увеличения объема репозитория пользоваться приложениями становится неудобно.

И тут на помощь пришел Termux.


Git с помощью Termux

Использовались материалы:
The Termux Wiki (wiki.termux.com)
Proper Git client on Android (pedronveloso.com)

Примерный порядок действий для настройки пакета git в среде Termux для его использования с целью синхронизации локального репозитория с удаленным:

1) установить и настроить Termux, в том числе:

Открыть для Termux доступ к внешнему хранилищу телефона, выполнив:

6 thoughts on “Использование Git на Android (+Termux)

  1. У меня проблема  ,при установке “git” требует имя пользователя и я пароль , я их не знаю и не ставил , как из узнать ?

    1. Если вы про git в Termux, то при первой установке пакета git не требуется указывать никаких паролей. Вероятно, вы что-то путаете.
      Либо требуются права sudo, но по-умолчанию в Termux этого нет.

  2. А как вообще узнать или изменить имя и пароль? Я нечего толком сделать не могу так как он требует что бы я ввёл имя и пароль пользователя 

    1. Устанавливать настройки по-умолчанию не обязательно, они просто для удобства чтобы не вводить некоторые параметры каждый раз. Ниже я привел примеры: “credential.helper store”, “pull.rebase true”, “user.name “, “user.email

  3. CANNOT LINK EXECUTABLE “ssh-keygen”: library “libcrypto.so.3” not found
    вот такое сообщение при установке пакета git. Что делать?

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

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