The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Анонсирован GitTorrent для доступа к Git-репозиториям при помощи BitTorrent

30.05.2015 10:07

Несмотря на децентрализованный характер Git, для первичного получения исходных текстов требуется сервер, занимающийся отдачей кода. Например, блокирование доступа или сбой в работе GitHub перекроет возможность загрузить код и вынудит искать зеркала, несмотря на то, что данный код может присутствовать в локальных git-репозиториях сотен и тысяч разработчиков. Крис Болл (Chris Ball), долгое время занимавший пост главного инженера проекта One Laptop Per Child, предложил использовать технологии BitTorrent для решения данной проблемы. Кроме общей концепции Крис подготовил и опубликовал под лицензией MIT прототип дополнения для git с реализаций транспорта, загружающего данные через BitTorrent, а также специальный демон, отдающий содержимое локального git-репозитория через BitTorrent.

Идея проекта достаточно проста - по аналогии, как BitTorrent позволяет сформировать распределённую сеть для хранения файлов, GitTorrent даёт возможность сформировать распределённую сеть для содержимого Git-репозиториев, отключение отдельных участников в которой не скажется на доступности данных, за счёт наличия в отдаче реплицированных копий. Для определения отдающих искомый репозиторий узлов и узла для отправки коммитов применяется DHT (распределённая хеш-таблица). Организованное при помощи DHT хранилище в формате ключ/значение используется как система для определения профиля пользователя и информации о том, какие у него имеются репозитории и свежие git-хэши изменений.

Начальное согласование соединения производится при помощи специального расширения BitTorrent. При обращении к узлу, на котором установлено данное расширение, создаётся специальный архив, включающий запрошенные git-объекты. На основании SHA1-хэша данного архива начинается его загрузка с использованием обычного BitTorrent и задействованием распараллеливания по сидам, которые имеют в раздаче аналогичный набор git-объектов. После загрузки и распаковки архива производится проверка подлинности git-объектов через верификацию цепочки коммитов в репозитории.

Вместо прямого обращения к GitHub по SSH пользователь может выполнить "git clone gittorrent://github.com/someuser/somerepo" и загрузить репозиторий от участвующих в его раздаче узлов при помощи BitTorrent. В случае использования имени хоста с репозиторием (github.com/someuser/somerepo) будет отправлен запрос к github.com и получен хэш последнего коммита в репозитории. После этого через распределённую хэш-таблицу будут выявлены узлы, которые содержат данный коммит. Затем, после соединения с одним из таких узлов и запроса у него списка необходимых файлов, будет сформирован архив с нужными коммитами и передан его хэш, на основании которого начнётся загрузка при помощи штатного BitTorrent.

Стадию обращения к GitHub для получения данных о коммитах можно исключить, указав при обращении SHA1-хэш владельца репозитория. Так как метод использования хэшей не слишком удобен, предусмотрена возможность регистрации читаемых имён, используя методы, применяемые для регистрации имён пользователей в Bitcoin. Для прямой отдачи своего репозитория через BitTorrent достаточно запустить gittorrentd. Возможно совершение не только операций fetch и clone, но и внесение изменений через операцию push. Синхронизация полученных коммитов между участвующими в раздаче узлами производится через отправку архивов с необходимыми git-объектами при помощи специального расширения протокола BitTorrent.

  1. Главная ссылка к новости (http://blog.printf.net/article...)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/42333-gittorrent
Ключевые слова: gittorrent, git, bittorrent
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (72) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 11:18, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –15 +/
    Какой-то геморой и костыль. Проще держать зеркало своего основного репозитория и не строить велосипеды из скотча.
     
     
  • 2.7, Аноним (-), 12:27, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Какой-то геморой и костыль.

    +1

     
     
  • 3.37, Аноним (-), 05:37, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > +1

    На третий день Зоркий Глаз заметил что для установки этой штуки сватается какой-то npm и node.js, которые тоже надо где-то взять, и которые тоже можно заблокировать. Wait, oh shi-

     
  • 2.11, Crazy Alex (ok), 13:49, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +7 +/
    А зеркало чужого тоже будете держать, даже не зная, что он вам понадобится? Тут, как я понимаю, идея в  том, что те, кому не жалко - открывают доступ к своим клонам, при этом их имена/адреса клиенту знать не надо. В результате когда очередной идиот заблокирует гитхаб вы сможете получить доступ к тем проектам, которые склонировал кто-то, кто не поленился запустить этот сервис.
     
     
  • 3.15, Demo (??), 15:22, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > когда очередной идиот заблокирует гитхаб

    Зеркало (как и основной репозитарий) можно сделать доступным не только в инете, но и по другим протоколам.

     
     
  • 4.17, Аноним (-), 15:32, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Зеркало (как и основной репозитарий) можно сделать доступным не только в инете, но и по другим протоколам.

    кто бы сомневался: RFC1149

     
     
  • 5.55, Аноним (-), 16:54, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > кто бы сомневался: RFC1149

    Слишком устарело -- хороший "карриер" не то что флешку, болванку  со всем проектом утянет.


     
  • 4.20, Crazy Alex (ok), 16:11, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Можно. Осталось только понять, как те, кто хочет склонировать основной репозиторий, узнают о существовании зеркала. А здесь - вполне удобный механизм.
     
     
  • 5.49, Demo (??), 11:42, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Осталось только понять, как те, кто хочет склонировать
    > основной репозиторий, узнают о существовании зеркала.

    Кому действительно нужно — узнают.

     
  • 3.27, ФСИН (?), 21:57, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • –5 +/
    И тебя заблокируют лет на 20!
    Без права переписки! xD
     
     
  • 4.30, Crazy Alex (ok), 01:15, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • –6 +/
    Я не имею дурной привычки жить в России
     
  • 3.38, Аноним (-), 05:39, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А зеркало чужого тоже будете держать, даже не зная, что он вам понадобится?

    Вот в чем я совершенно точно уверен - так это в том что я не побегу ставить node.js и какие-то подвыперды скрипткидизов через их левый самопальный эрзац пакетного менеджера. Сделали бы это мелким и ненапряжным - им бы пользовались. А вкрячивать node.js и кучу требухи к оному в систему ради этой буиты будут только полные психи.

     
     
  • 4.50, Crazy Alex (ok), 13:08, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Да не бегите, кто ж заставляет. Другие найдутся. Кстати, интерпретатор перла или питона тоже ради скрипта не поставите? И ладно - они  и так обычно в системе есть. И нода так же - часто появляется ради совсем других задач - либо по прямому назначению на машине разработчика, либо как хост для штук вроде Emscripten, либо именно как интерпретатор локального JS, на котором хотя бы быстрые скрипты получаются. Опять же, если V7 зачем-то стал, то нода поверх него - невелик оверкилл.
     
     
  • 5.65, Аноним (-), 15:00, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ога, будет как в i2p Когда придется двое суток ффтыкатЪ пока единственный пир н... большой текст свёрнут, показать
     
     
  • 6.73, Аноним (-), 20:34, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Скорее, просто нормальные варианты, без дополнительных прибамбасов и библиотек... большой текст свёрнут, показать
     
  • 6.77, Crazy Alex (ok), 23:21, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Учитывая, что 95% которые с виндами (из разработчиков) - веберы, то нода у них окажется с много большими шансами, чем что-либо другое.

    Но я самого стона не понимаю. Задача для интерпретатора в самый раз - ничего сверхсложного, никаких тяжелых вычислений, и вообще запросы приходят раз в год по обещанию. Зачем здесь что-то большее, чем скрипт?

     
     
  • 7.81, Аноним (-), 10:31, 02/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Не мешайте чуваку демонстрировать свое ЧСВ.
     
  • 7.82, arisu (ok), 10:41, 02/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Зачем здесь что-то большее, чем скрипт?

    согласен, незачем. но оно тянет за собой идиотскую ноду.

     

  • 1.2, Аноним (-), 11:21, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Это недо допилить, добавить туда распределенную сборку проектов на разрешивших это узлах и будет то, что я пару лет назад на форуме описывал. Но он сделал, а я так, мечты мечтал :)
     
     
  • 2.4, Какаянахренразница (ok), 11:23, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +10 +/
    Какую сборку, куда, зачем? Это VCS, а не CI.
     

  • 1.3, Какаянахренразница (ok), 11:21, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Э-э-э, а как пушить коммиты-то?

    Торрент протокол подразумевает, что качаемые порнофиль... то есть файлы не изменяются во времени. А в нормальном репозитории постоянно происходят изменения. Как по хэшу определять, чья версия репы самая свежая? Как сиды будут узнавать, что появился ещё один коммит? Как определять, куда пушить?

    P.S.: Мама, это я дурак или идея битгита такая?

     
     
  • 2.9, Аноним (-), 13:12, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Пример из оригинала статьи:

    git clone gittorrent://81e24205d4bac8496d3e13282c90ead5045f09ea/recursers

    Здесь 81e24205d4bac8496d3e13282c90ead5045f09ea - хеш публичного ключа владельца репозитория, а recursers - имя репозитория. Софтина ищет по этому ключу самого владельца, и спрашивает у него, что новенького в репозитории. Я, правда, не уверен, что представленная реализация умеет кешировать эту информацию на других узлах на случай отсутствия владельца в онлайне (не вникал в код, а в описании информация отсутствует), но технически и это реализуемо.

     
  • 2.10, Crazy Alex (ok), 13:45, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Даже если никак - это всё равно интересная возможость
     
  • 2.14, bav (ok), 15:21, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это ты дурак. Синкаются object-файлы. Они не меняются.
     
     
  • 3.25, Какаянахренразница (ok), 20:24, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Это ты дурак. Синкаются object-файлы. Они не меняются.

    Понятно. Спасибо.

     
  • 2.33, Anono (?), 01:52, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Версионный срез не меняется
     

  • 1.5, Аноним (-), 12:00, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +10 +/
    One Git Per Child
     
     
  • 2.8, Аноним (-), 13:11, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +6 +/
    One GitHub Per Child
     

  • 1.6, Аноним (-), 12:15, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Бред какой-то, седня точно не первое апреля?
     
  • 1.12, Аноним (-), 14:33, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Интересная идея.
    В любом случае хуже от этого не будет.
    Единственный минус это актуализация содержимого репозитария.
    Но он также существует на тех же фтп зеркалах.
    Это лучше, чем отсутствие доступа к основному хранилищу репозитариев.
     
  • 1.13, iZEN (ok), 14:42, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Слабость Git на базовом уровне в том, что он не только сложный в применении, но и не поддерживает докачку файлов с сервера при обрыве соединения. Далее идёт костылинг, чтобы хоть как-то обойти эти слабости и несовершенства.
     
     
  • 2.16, bav (ok), 15:23, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Слабость Git на базовом уровне в том, что он не только сложный
    > в применении, но и не поддерживает докачку файлов с сервера при
    > обрыве соединения. Далее идёт костылинг, чтобы хоть как-то обойти эти слабости
    > и несовершенства.

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


     
  • 2.18, Аноним (-), 15:34, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +10 +/
    > Слабость Git на базовом уровне в том, что он не только сложный в применении

    iZen ниасилил

     
  • 2.19, Аноним (-), 15:42, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И часто у тебя связь рвется?
     
     
  • 3.26, Аноним (-), 21:36, 30/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не, этот аргумент не катит. Неосиляторство — это, конечно, глупость, но считать само собой разумеющейся бесперебойную связь — глупость даже бо́льшая.
     
     
  • 4.31, Аноним (-), 01:39, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ты понимаешь о каком объеме трафика идет речь, чтобы заморачиваться на докачку?
     
     
  • 5.74, iZEN (ok), 22:08, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Ты понимаешь о каком объеме трафика идет речь, чтобы заморачиваться на докачку?

    Примерно 5 ГБ занимает скачанный на ZFS с включенным сжатием LZ4 объём локального репозитория Netbeans в hg.
    OpenJDK и Mozilla не тестировал. Есть ещё OpenOffice, но он по большому счёту не нужен.

    Что, разработчикам этих продуктов совсем-совсем неинтересно знать, что у них недокачалось или оборвалось, раз они не используют Git? Может у них каналы слабые и часто рвётся телефонная связь? Вряд ли. Так почему же они не используют везде распиаренный Git?! Это же модно, молодёжно, привлекательно! Молодняк ушёл Git осваивать, а старики на hg сидят, но почему?

     
     
  • 6.75, Andrey Mitrofanov (?), 22:21, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Примерно 5 ГБ занимает скачанный на ZFS с включенным сжатием LZ4 объём
    > локального репозитория Netbeans в hg.

    [CODE]REPO SIZE                     REPO SIZE
    613M    .git                  2,7G  .hg[/CODE]

    Зря ты, зефирушка, взялся размерами меряться. https://xrunhprof.wordpress.com/2011/04/11/mercurial-vs-git-performance/

    Также ткнись носом -- там и по времени в 2.5-6 раз разница. И не в пользу ртути.

    И таки да, там оно не на "zfs с lz4" (ты у нас один такой), иначе бы разница была в десятки раз.

     
  • 6.76, Andrey Mitrofanov (?), 22:25, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>чтобы заморачиваться на докачку?
    > Примерно 5 ГБ занимает скачанный

    И кстати, Великий Космос внял твоим мольбам о докачке: теперь для тебя есть git поверх торрента же.

    ++А ртутные всё ещё тормозят без торрента?! В 2015-ом??? Ниаписуема.

     
  • 4.39, Аноним (-), 05:44, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Не, этот аргумент не катит. Неосиляторство — это, конечно, глупость, но считать
    > само собой разумеющейся бесперебойную связь — глупость даже бо́льшая.

    Скачать большой проект 1 раз в жизни можно и на нормальном канале. А докачивать дельту потом можно хоть на GPRS, дельта ж мелкая. Вот никто и не парится особо. Для разработчиковских юзкейсов все нормальненько. А если кто путает vcs и файлокачалку - при чем тут git?

     
     
  • 5.51, Crazy Alex (ok), 13:18, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    И скачать может быть проблематично (вопрос - где именно вас застала нужда что-то сделать с кодом, или понадобилось именно тогда, когда есть проблемы с VPN к серверу с репой), и дельта бывает большая, если активно разрабатываемую репу обновляешь раз в три месяца, так как чаще не нужна... Если проект занимает мегабайт 300 то размеры репы в несколько гиг - ни разу не экзотика, особенно когда там есть хоть какие-то бинари, вроде графики. Другое дело, что есть какие-то практические проблемы с реализацией - я не смотрел, как именно pull сделан, но как минимум добавить при выставленном флажке в конфиге генерацию и сохранение бандла могли бы. То есть полный pull превратился бы в скачивание (возможно с докачкой) бандла + апдейт до текущего состояния.
     
     
  • 6.59, Аноним (-), 19:39, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Качать первый раз через rsync?
     
     
  • 7.60, user (??), 21:49, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    тарбол с добавленым .git
     
  • 6.61, arisu (ok), 23:47, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    бинари. в гит. этот «проект» надо закопать вместе с разработчиками, неоперабельно.

    p.s. имел в виду «часто меняющиеся бинари», натюрлих.

     
     
  • 7.78, Crazy Alex (ok), 23:26, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Что-нибудь вроде специфических шкур под заказчика - ещё и как ложится в репу - куда ж ещё, если может оказаться нужной сборка версии полугодовой давности с багфиксом. А так - скормил системе сборки имя ветки - и готово. И шкурки, понятно, имеют свойство меняться вместе с веяниями моды, изменениями фирменного стиля и т.д. Да и вообще - через пару-тройку лет даже "редко меняющиеся" отрастают так, что весело становится.
     
  • 6.67, Аноним (-), 15:14, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну, понимаешь, качать какой-нить линуксный кернель целиком по GPRS - займет уйму... большой текст свёрнут, показать
     
     
  • 7.79, Crazy Alex (ok), 23:42, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Да хрен с ней, с дельтой. Хотя бы для полного clone сделали костыль - решилось бы 99% проблем.

    А всё остальное - чаще не GPRS, а просто падает раз в N минут при не слишком высокой скорости (когда репа качается, скажем, минут 15). С VPN на хреноватых каналах такое - сплошь и рядом. Обычная корпоративная проектная репа и обычный же корпоративный VPN. И не  с одним заказчиком я такое видел, тормозной отваливающийся VPN - скорее норма. Да, я понимаю, что каналы должны быть хорошими, VPN - правильно настроенным и т.д. Но вот реальность такая - попадал не раз.

    А трескать место на сервере надо один раз. По принципу "раз в сутки генерим бандл и сутки его держим". Бандл - тупо архив репы, для всех клиентов одинаковый. Что даёт возможность забрать львиную долю объектов, остальное дотянется обычным образом. В сущности, проблема с этим ровно одна - хотелось бы, чтобы это было внутри гита, чтобы автоматом работало с дефолтным гитом на сервере и клиенте. накостылить-то - не проблема, cron + tar на сервере, wget + git clone --reference на клиенте - и всех делов. Только задолбаешься админов уговаривать этот кроновский таск добавлять да веб-доступ к файлику давать.

     
  • 2.32, Аноним (-), 01:41, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    у iZen хобби позориться?
     
     
  • 3.40, Аноним (-), 05:45, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > у iZen хобби позориться?

    Ну да. Если не веришь - посмотри в его профайл и загугли. А что еще ожидать от "типа, фирбздшника" который на работе восьмерку использует? ;)

     
     
  • 4.54, Аноним (-), 14:18, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Ну да. Если не веришь - посмотри в его профайл и загугли.
    > А что еще ожидать от "типа, фирбздшника" который на работе восьмерку
    > использует? ;)

    ИМХА, он уже много лет оччень неплохо так троллит и ловит лулзы с очередных д'Артаньянов ;)

     
     
  • 5.56, chinarulezzz (ok), 18:12, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Изя, залогинься)
     
  • 5.62, arisu (ok), 23:48, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > ИМХА, он уже много лет оччень неплохо так троллит и ловит лулзы
    > с очередных д'Артаньянов ;)

    увы, нет, не тролль он. а просто дурак.

     
  • 5.68, Аноним (-), 15:15, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > троллит

    Вы сделали несколько ошибок в слове "тормозит".


     

  • 1.21, Аноним (-), 17:07, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Очень круто!
     
  • 1.28, anonymous (??), 23:13, 30/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как уже достало неосиляторство. Всё уже давно есть: http://j16sdiz.github.io/egit-freenet/ При этом freenet приспособлен для гита замечательно, поскольку позволяет распространять связки ключ-блокданных, а приспосабливание торрента для этого - костыль, который обречён на провал, поскольку торрент нужен для выкачки целых архивов, а не одиночных файлов. Даже emule был бы лучше.
     
     
  • 2.29, Аноним (-), 00:28, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Как уже достало неосиляторство. Всё уже давно есть: http://j16sdiz.github.io/egit-freenet/

    Ты бы сам осилил осведомиться как о freenet, так и о сабже как следует. Они вообще ничем не похожи. О каком "всё уже давно есть" может идти речь?

     
     
  • 3.34, anonymous (??), 02:40, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Давно есть безопасная распределённая сеть с key-value базой данных. Давно уже пытаются через неё наладить работу распределённых систем контроля версий.

    Но это же не популярно! Хоть технология старше некоторых посетителей этого сайта. Надо на модном и молодёжном битторенте запилить вообще всё, что требует p2p. Видимо потому что более стрёмного и небезопасного протокола найти не смогли. А так бы на нём делали.

     
     
  • 4.41, Аноним (-), 05:48, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Имела жаба гадюку^W пито^W... жабу-скрипта, во.

    В смысле, вы серьезно полагаете что этими выcepами на яве и node.js будет пользоваться толпа народа? Среди програмеров мало желающих вфигачить себе 100 мегов рантайма ради одной мелкой финтифлюшки.

     
     
  • 5.43, anonymous (??), 07:16, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А вы посмотрите сколько jvm проектов на том же github. Думается мне, кто сам пишет на яве, не будет столь лицемерным, чтобы не пользоваться ею для синхронизации гита.
     
     
  • 6.44, arisu (ok), 07:51, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > А вы посмотрите сколько jvm проектов на том же github. Думается мне,
    > кто сам пишет на яве, не будет столь лицемерным, чтобы не
    > пользоваться ею для синхронизации гита.

    отличный ответ! действительно, какая разница: javascript или java?

     
     
  • 7.53, Crazy Alex (ok), 13:21, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Он фринет имел в виду
     
     
  • 8.69, Аноним (-), 15:17, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Состояние фринета как бы намекает, насколько оно всем надо В результате все исп... текст свёрнут, показать
     
  • 5.52, Crazy Alex (ok), 13:21, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Если вы разрабатываете не на ноутбуке то 100 метров рантайма для программера - вообще не объём. Вопрос только чтобы не мешало текущей деятельности - но нода, вроде, довольно умеренна в этом плане, в отличие от JVM.
     
     
  • 6.70, Аноним (-), 15:19, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Если вы разрабатываете не на ноутбуке то 100 метров рантайма для программера
    > - вообще не объём.

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

     
     
  • 7.80, Crazy Alex (ok), 23:49, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Я сам ни разу не фанат всего, что идёт мимо пакетного менеджера. Но вот самих рантаймов - число весьма ограниченное. Что там - перл, питон (2.7 по факту хватает), джава, нода. Ну руби ещё. не велика проблема хоть все поставить - по нынешним временам - в плане дискового пространства это абсолютные копейки.
     
  • 4.58, Dmitry77 (ok), 19:24, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Давно есть безопасная распределённая сеть с key-value базой данных. Давно уже пытаются
    > через неё наладить работу распределённых систем контроля версий.
    > Но это же не популярно! Хоть технология старше некоторых посетителей этого сайта.
    > Надо на модном и молодёжном битторенте запилить вообще всё, что требует
    > p2p. Видимо потому что более стрёмного и небезопасного протокола найти не
    > смогли. А так бы на нём делали.

    А подробности можно?

     
     
  • 5.63, arisu (ok), 23:54, 31/05/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > А подробности можно?

    зачем тебе подробности от профана? по его тексту видно, что он вообще ничего не понимает в том, о чём пытается Вещать.

     
  • 5.64, Аноним (-), 05:16, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > А подробности можно?

    Зачем вам всякие невзлетевшие сферические кони, которые только "теоретически в 100500 раз лучше всяких поделок студентов!"?
    Когда была мода на п2п, их там дюжинами "клепали" -- и большая часть этих придумок так и осталось на бумаге (т.к. только там и работало).

    А торренту уже более 10 лет. И назвать его "модно-молодежной недоподелкой"  может разве что очередной диванный эксперт.  

     
  • 4.66, Аноним (-), 15:08, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Давно есть такой гордый птиц -- ежик. Давно уже пытаются
    >  его научить летать и заодно наладить доставку почты.
    > Но это же не популярно! Хоть технология правильного пинка и старше некоторых посетителей этого сайта.
    > Надо обязательно брать этих модных и молодёжных голубей, вообще для всего, что требует полета.

    fixed

     

  • 1.57, Dmitry77 (ok), 18:57, 31/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Теперь патенты не страшны - даже если технология запатентована, опенсорсный проект можно развивать, никто не сможет закрыть
     
     
  • 2.71, Аноним (-), 15:21, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Теперь патенты не страшны - даже если технология запатентована, опенсорсный проект можно
    > развивать, никто не сможет закрыть

    Только штатовские и еще некоторые разработчики для себя им пользоваться не смогут и поэтому разрабатвыать ты будешь "тихо, сам с собою, правою рукою" (с) Ларри Мак Лаффер.

     
  • 2.72, Аноним (-), 17:06, 01/06/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Кроме пиндосов и так никто не боится, такой бред как патенты на ПО существует только в самой свободно1 стране
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру