Fossil: один бинарник, один файл с данными

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



Во-первых, вся система скомпилирована в единый бинарник, который можно носить с собой на флэшке и использовать на любом компьютере без инсталляции (есть вариант как под Windows, так и под Linux). В бинарник входит http-сервер, клиент для работы с базами sqlite3, собственно консольная утилита для управления всем этим хозяйством и т.д.

Во-вторых, все файлы проекта, находящиеся под управлением fossil, тоже содержатся в едином файле. Как можно понять из вышесказанного, он представляет собой базу данных sqlite3 (основной автор fossil — Р. Хипп — является одним из лидеров разработки проекта Sqlite. ). В ней не только история изменений файлов, но и wiki(!), трэкинг багов, управление пользователями и т.п. Поэкспериментировав с сервером, я даже пришел к выводу, что с его помощью можно создать небольшой сайт, т.к. css и html там тоже в довольно широких пределах можно править.

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

fossil init test.fsl


где test.fsl — файл, в котором будут храниться данные. Следующие команды похожи на те, которые применяются при работе с git (кстати, git и follil-репозитории взаимоконвертируемы):

fossil add HelloWorld.java
fossil add build.xml
fossil commit -m 'First commit'


Git-подобными по синтаксису и функционалу являются такие команды, как push, pull, clone.

А вот дальше — маленькое чудо:

fossil ui


По этой команде запускается веб-сервер и сразу же открывается направленный на него браузер, т.е. дальнейшие операции можно производить, во-первых, в графическом режиме, во-вторых — удаленно. При этом пользователи имеют доступ к репозитарию по паролю и все прочие требования безопасности (например, передача по https) соблюдаются. Через веб-интерфейс можно писать топики, поясняющие назначение программы, прикреплять к ним бинарные файлы и т.п. Напоминаю, что всё это будет храниться в едином файле, который можно, например, всегда носить с собой на флэшке. Кто не желает на флэшке — может завести себе бесплатный fossil-репозиторий на сайте chiselapp.com.

Комментарии (5)

RSS свернуть / развернуть
+
0
Да, Fossil лучше для персонального применения чем git или svn — пока их установишь позабудешь что сделать хотел)
avatar

Sergei_T

  • 30 октября 2011, 10:31
+
0
… пока их установишь позабудешь что сделать хотел)

+стопицот
avatar

yababay

  • 30 октября 2011, 11:17
+
0
Пока собирал мегаионную пушку все мишени разбежались
avatar

Sergei_T

  • 30 октября 2011, 17:15
+
0
На самом деле установить-то не сложно. Git вообще в дистрибутивы, которыми я пользуюсь, по умолчанию входит (тем более svn). А вот научиться грамотно пользоваться, использовать всё богатство команд, а не 4-5 основных — это да, целое дело.
avatar

yababay

  • 30 октября 2011, 20:20
+
0
спасибо! Как раз то, что искал!
avatar

w32blaster

  • 14 ноября 2011, 17:53

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.