Please open Telegram to view this post
VIEW IN TELEGRAM
Приходила идея спарсить весь github?
Мне нет! А вот некому чуваку такая идея пришла и он замутил интерактивную карту по открытым git репозиториям. По итогу коллекция составила более чем 400к репозиториев. Масштабно, ничего не скажешь. Ну собрал и собрал, нам то какое дело? Читай дальше!
А самое главное тут, что под все эти данные, он сделал интерактивную онлайн карту. Каждая «страна» на карте это репозитории, написанные на одном языке или фреймворке. Например, Pythonia = Python, а Swiftoria - на Swift.
Имена стран генерились с помощью chatgpt таким запросом:
И даже поиск работает, чудо🍴 Можно натолкнуться на достаточно интересные штуки, которые известны лишь узкому числу лиц и особо нигде не пиарятся.
Потыкать карту можешь:🐱 тут.
Страница проекта с подробностями:🐱 тут.
ps: Идея для стартапа: Сделать интерактивную карту с данными pornhub. Чтобы тыкнул и видосики-видосики.
tags: #services #git
—
💩 @bashdays
Мне нет! А вот некому чуваку такая идея пришла и он замутил интерактивную карту по открытым git репозиториям. По итогу коллекция составила более чем 400к репозиториев. Масштабно, ничего не скажешь. Ну собрал и собрал, нам то какое дело? Читай дальше!
А самое главное тут, что под все эти данные, он сделал интерактивную онлайн карту. Каждая «страна» на карте это репозитории, написанные на одном языке или фреймворке. Например, Pythonia = Python, а Swiftoria - на Swift.
Имена стран генерились с помощью chatgpt таким запросом:
Please analyze these repository and detect a common theme (e.g. programming language, technology, domain). Pay attention to language too (english, chinese, korean, etc.). If there is no common theme found, please say so. Otherwise, If you can find a strong signal for a common theme please come up with a specific name for imaginary country that contains all these repositories. Give a few options. When you give an option prefer more specific over generic option (for example if repositories are about recommender systems, use that, instead of generic DeepLearning)Хм, буду теперь названия переменных придумывать таким способом, пусть проклятые роботы за меня пашут.
И даже поиск работает, чудо
Потыкать карту можешь:
Страница проекта с подробностями:
ps: Идея для стартапа: Сделать интерактивную карту с данными pornhub. Чтобы тыкнул и видосики-видосики.
tags: #services #git
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Как правильно хранить тяжелые файлы гит репах? Например, бинарники или что-то подобное.
ㅤ
Ответ очевидный и правильный — никак! В гитлабах/гитхаба/битбакетах установлены лимиты на размер отдельных файлов. Там что-то вроде 50 метров на файл дается.
В принципе можно уложиться. Но нахуй надо. Прикинь у тебя пайплайн вытягивает репу размером с 10 гигабайт. И так каждую сборку. Гит репа должна быть тощей и дрищёвой.
А всё тяжелое будь бобр-добр храни в s3 либо на других решениях.
НО если очень хочется прям в гите держать. Для этого существует
У
В gitea тоже можно
Как этим пользоваться?
Ставим к себе на машину:
Переходим в свой гит репозиторий и инициализируем:
В папке
На самом деле я хуй знает сколько он весит, это для примера.
Помечаем его:
После этого в папке files появится файл
Внутри этот файл выглядит так:
И по итогу бинарник в репе станет ссылкой на настоящий бинарник в
А еще можно вайлдкардами трекать:
Ну а дальше, как обычно:
Всё! Теперь твой большой файл аккуратно лежит в
Мне тут пришлось партнерских постов на эту неделю понабрать, реинвестируем в развитие @gitgate, так что рекомендую включить баннерную слепоту и сильно не триггериться. Спасибо за понимание!
Чтиво: про LFS можешь глянуть еще тут и тут.
tags: #git #devops
—
🔔 @bashdays➡️ @gitgate
ㅤ
Ответ очевидный и правильный — никак! В гитлабах/гитхаба/битбакетах установлены лимиты на размер отдельных файлов. Там что-то вроде 50 метров на файл дается.
В принципе можно уложиться. Но нахуй надо. Прикинь у тебя пайплайн вытягивает репу размером с 10 гигабайт. И так каждую сборку. Гит репа должна быть тощей и дрищёвой.
А всё тяжелое будь бобр-добр храни в s3 либо на других решениях.
НО если очень хочется прям в гите держать. Для этого существует
GIT LFS
. Дословно — Large File Storage (дохуя большое файловой хранилище).У
LFS
уже свои лимиты в отличие от нативного git репозитория. И это LFS
включен из коробки в гитлабах/гитхаба/битбакетах. Там уже размер файла может быть 1 гигабайт или что-то вроде того.В gitea тоже можно
LFS
через конфиг включить:[server]
LFS_START_SERVER = true
LFS_ALLOW_PURE_SSH = true
[lfs]
PATH = /home/gitea/data/lfs
Как этим пользоваться?
Ставим к себе на машину:
apt-get install git-lfs
brew install git-lfs
Переходим в свой гит репозиторий и инициализируем:
cd /home/user/linuxfactory/infra
git lfs install
В папке
/infra/roles/node_exporter/files
у меня лежит бинарник node_exporter который весит 100 мегабайтНа самом деле я хуй знает сколько он весит, это для примера.
Помечаем его:
cd /infra/roles/node_exporter/files
git lfs track "node_exporter"
После этого в папке files появится файл
.gitattributes
. Это правила для этого файла, которые указывают чтобы node_exporter улетал в LFS
.Внутри этот файл выглядит так:
node_exporter filter=lfs diff=lfs merge=lfs -text
И по итогу бинарник в репе станет ссылкой на настоящий бинарник в
LFS
.А еще можно вайлдкардами трекать:
git lfs track "*.jpg"
Ну а дальше, как обычно:
git add .
git commit -m "add lfs for node_exporter"
git push
Всё! Теперь твой большой файл аккуратно лежит в
LFS
, а в самом гит репозитории осталась лишь ссылка которая на этот файл ссылается.Мне тут пришлось партнерских постов на эту неделю понабрать, реинвестируем в развитие @gitgate, так что рекомендую включить баннерную слепоту и сильно не триггериться. Спасибо за понимание!
Чтиво: про LFS можешь глянуть еще тут и тут.
tags: #git #devops
—
Please open Telegram to view this post
VIEW IN TELEGRAM