ГлавнаяОперационные системыLinuxКак установить систему контроля версий Fossil в Linux

Как установить систему контроля версий Fossil в Linux

Fossil — мощная система контроля версий (VCS) для Linux. Это альтернатива гитхабу , но в отличие от Git он предоставляет полный набор инструментов для создания, изменения и даже совместного использования вашего репозитория в Интернете. В этой статье показано, как установить и развернуть Fossil в Ubuntu Linux.

Зачем использовать Fossil вместо Git

Одним из главных преимуществ Ископаемое является то, что это

Зачем использовать Fossil вместо Git

ом в Интернете. Это делает его невероятно полезным для пользователей, которые просто хотят поделиться одним репозиторием с другими людьми, не создавая учетную запись Github или Gitlab.

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

Хотя Fossil и Git используют один и тот же рабочий синтаксис, Fossil предоставляет дополнительные функции, которые сложно реализовать в Git. Например, Fossil позволяет избежать проблемы «отсоединенного HEAD», предоставляя внутреннюю базу данных, которая отслеживает ссылки между предыдущими и будущими коммитами. В результате репозитории Fossil работают более гладко и без проблем по сравнению с Git.

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

Полезно знать: изучите некоторые из лучшие хуки Git для управления вашим репозиторием .

Получение необходимых компонентов и Docker

Первым шагом при развертывании Fossil является получение файлов репозитория для Docker. Для этого получите ключ подписи для проекта Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

Создайте новый файл в папке «/etc/apt/sources.list.d». Он будет содержать ссылку на репозиторий, откуда Ubuntu будет получать пакеты Docker:

sudo nano /etc/apt/sources.list.d/docker.list

Вставьте следующий код в новый файл репозитория:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Сохраните файл репозитория Docker, затем установите основной пакет Snap:

sudo snap install core

Загрузите пакет оснастки Certbot с сайта Electronic Frontier Foundation:

sudo snap install certbot --classic

Выполните следующую команду, чтобы обновить списки п

Получение необходимых компонентов и Docker

an> apt update && sudo apt upgrade

Установите Docker и Nginx вместе с их пакетами зависимостей:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx

Сборка и установка Fossil в Linux

Перейдите к страница загрузки для Fossil , затем выберите исходный архив последней стабильной версии. В моем случае я скачаю версию 2.23 Fossil.

Скриншот со ссылкой на последнюю стабильную версию Fossil.

Переместите архив с исходным кодом в свой домашний каталог, затем распакуйте его:

mv ~/Downloads/fossil-src-2.23.tar.gz
tar xvzf ~/fossil-src-2.23.tar.gz

Зайдите в папку архива, затем откройте Dockerfile Fossil с помощью любимого текстового редактора:

cd ~/fossil-src-2.23
nano ./Dockerfile

Прокрутите файл до конца и добавьте перед строкой "--user", "admin" ]следующее:

"--https",              \
Терминал, выделяющий флаг «--https» для включения HTTPS по умолчанию в Fossil.

Сохраните измененный файл Dockerfile, а затем создайте образ контейнера:

sudo docker build -t fossil .

Запуск Fossil и создание обратного SSL-прокси

Теперь у вас есть новый экземпляр Fossil VCS, работающий как контейнер Docker на вашем сервере. Чтобы получить к нему доступ, вам необходимо зашифровать любые внешние подключения к Fossil.

Для начала создайте новую запись DNS «A», указывающую на IP-адрес вашего сервера Fossil.

Сборка и установка Fossil в Linuxпоказывающий DNS-запись A для Fossil.">

Используйте свой любимый текстовый редактор, чтобы создать новый файл конфигурации сайта для вашего экземпляра Fossil:

sudo nano /etc/nginx/sites-available/fossil-scm

Вставьте следующий блок кода в файл конфигурации нового сайта:

server {
        server_name SUBDOMAIN.YOUR-ROOT.DOMAIN;
        location / {
                proxy_pass http://127.0.0.1:7777;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header Host $host;
        }
}

Замените переменную server_nameна свой субдомен для Fossil.

Терминал, показывающий файл конфигурации сайта обратного прокси-сервера в Nginx.

Создайте символическую ссылку для файла конфигурации вашего сайта на «/etc/nginx/sites-enabled/»:

sudo ln -s /etc/nginx/sites-available/fossil-scm /etc/nginx/sites-enabled/

Запустите демон Nginx вашей системы с помощью systemctl:

sudo systemctl enable --now nginx.service
sudo systemctl reload nginx.service

Запустите новый образ Fossil Docker, выполнив следующую команду:

sudo docker run \
    --publish Запуск Fossil и создание обратного SSL-проксиn> fossil \
    --cap-drop AUDIT_WRITE \
    --cap-drop CHOWN \
    --cap-drop FSETID \
    --cap-drop KILL \
    --cap-drop MKNOD \
    --cap-drop NET_BIND_SERVICE \
    --cap-drop NET_RAW \
    --cap-drop SETFCAP \
    --cap-drop SETPCAP \
    fossil

Откройте новую панель Tmux, нажав Ctrl+ B, затем C. Внутри выполните следующую команду, чтобы запросить сертификат SSL у Certbot:

sudo certbot --nginx -d fossil-scm.myvpsserver.top

Проверьте, доступен ли ваш экземпляр Fossil через Интернет, перейдя в свой субдомен.

Снимок экрана, показывающий целевую страницу только что установленного экземпляра Fossil.

Полезно знать: узнайте, как можно создавайте простые веб-страницы с автоматическим HTTPS с помощью Caddy .

Создание первого хранилища ископаемых

После того, как Fossil запущен на вашем сервере Linux, вы можете настроить свой новый экземпляр. Нажмите ссылку setup/config в разделе Главная.

Снимок экрана, показывающий ссылку «Настройка/конфигурация» на целевой странице Fossil по умолчанию.

Укажите данные учетной записи администратора, затем нажмите «Войти». Пароль для учетной записи администратора можно найти в журнале вывода вашего контейнера Docker.

Скриншот, показывающий случайный пароль для учетной записи администратора.

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

Снимок экрана, на котором выделена кнопка «Применить изменения» для начальной конфигурации Fossil.

Клонирование и использование хранилища ископаемых

Чтобы использовать новый репозиторий кода, вам необходимо сначала создать его копию на своем компьютере. Для этого установите локальную версию Fossil на рабочий стол Linux:

sudo apt install fossil

Перетащите весь репозиторий на свой компьютер и зайдите в папку его репозитория:

fossil clone https://SUBDOMAIN.YOUR-ROOT.DOMAIN
cd ./YOUR-REPO-NAME

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

nano ./sample.file
fossil add ./sample.file
fossil commit

Укажите сведения о первоначальном коммите, а затем сохраните его, создав новую строку, начинающуюся с точки (.).

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

К вашему сведению: изучите основы управления кодом до создание собственного репозитория Git .

Перенос локальных изменений в удаленное хранилище ископаемых

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

Чтобы это исправить, перейдите в веб-интерфейс вашего экземпляра Fossil и войдите в систему под учетной записью администратора.

Нажмите категорию Администратор в верхнем меню панели управления.

Скриншот, показывающий расположение пункта меню «Администратор» на панели управления Fossil.

Выберите Пользователи на панели управления администратора.

Создание первого хранилища ископаемыхs-submenu.png" alt="Скриншот, показывающий категорию «Пользователи» в консоли администратора.">

Нажмите Добавить, чтобы создать нового пользователя для вашего репозитория.

Скриншот, показывающий расположение кнопки «Добавить» для создания новых пользователей.

Укажите имя пользователя и пароль для нового пользователя.

Установите флажок Разработчик в категории Возможности, затем нажмите Применить изменения, чтобы сохранить нового пользователя.

Снимок экрана, показывающий настройку коммиттера по умолчанию для нового пользователя Fossil.

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

fossil push https://YOUR-USERNAME@SUBDOMAIN.YOUR-ROOT.DOMAIN

Примечание. Вы также можете получить новые изменения из удаленного репозитория Fossil, запустив fossil pull.

Введите пароль вашего пользователя Fossil, затем нажмите Enter, чтобы отправить локальные изменения в удаленный репозиторий.

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

Снимок экрана, показывающий образец файла фиксации в локальном экземпляре Fossil.

Установка и развертывание собственной системы контроля версий Fossil — это лишь первый шаг к возвращению контро

Клонирование и использование хранилища ископаемых

е онлайн-общение к размещение собственного сервера псевдонимов электронной почты с помощью SimpleLogin .

Изображение предоставлено: Панджак Патель через Unsplash . Все изменения и скриншоты Рамсеса Реда.

Перенос локальных изменений в удаленное хранилище ископаемых

ПОХОЖИЕ СТАТЬИ

Популярные записи