Telegram Web
Forwarded from Python/ django
🖥 Как управлять репозиториями git с помощью Python

В этом полезном туториале мы рассмотрим, как управлять репозиториями и реализовать базовый рабочий процесс git с помощью библиотеки GitPython.

Если конкретнее, то мы разберём:
🟡Как управлять репозиториями git с помощью библиотеки GitPython
🟡 Как добавить путь в репозиторий
🟡Как клонировать репозиторий git
🟡Как создавать и отправлять коммиты
🟡Как работать с ветками
🟡Как управлять подмодулями

Все эти знания можно использовать для автоматизации работы с репозиториями, освобождая время для остальных вещей

▶️ Поехали

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from DevOps
🤓 О том, как поднять свой собственный git-сервер

Начнем с того, что самый простой способ — это создать git --bare init репозиторий на вашем сервере и написать обычные скрипты для выполнения автоматических задач.
Например, для этого можно использовать скрипт, который запускается в cron, делает git pull репозитория с кодом, а потом собирает и публикует результат.
Но у этого метода есть свои проблемы.

📎 Какие же есть другие варианты?

@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🤓 lazygit для упрощения работы с git

brew install lazygit

lazygit — это простой интерфейс терминала для команд git.
GUI сделан на основе библиотеки gocui, с помощью которой можно реализовать полноценные окна и взаимодействие с ними в терминале.

lazygit можно гибко настраивать под себя, начиная с цветовой гаммы и заканчивая добавлением новых команд или горячих клавиш. Все настройки лежат в файле config.yml: в Linux — ~/.config/lazygit/config.yml, в MacOS — ~/Library/Application Support/lazygit/config.yml

🖥 GitHub
🟡 Доки
🟡 Статья о lazygit на Хабре

@github_code
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🌟 Novu — IaaC инфраструктура уведомлений на основе GitOps. Встроенный центр уведомлений, интеграция с электронной почтой, Push и Slack

Novu — open-source инфраструктура уведомлений;
Novu предоставляет унифицированный API, который упрощает отправку уведомлений по нескольким каналам, включая In-App, Push, Email, SMS и Chat. С Novu можно создавать пользовательские рабочие процессы и определять условия для каждого канала, не беспокоясь, что уведомления будут доставлены наиболее эффективным способом.

🖥 GitHub
🟡 Доки

@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Kali Linux
💻 Злоумышленники стирают GitHub-репозитории жертв и требуют выкуп за восстановление данных

Исследователи заметили новую вредоносную кампанию, в рамках которой злоумышленники атакуют репозитории на GitHub, уничтожают их содержимое, а затем просят жертв связаться с ними через Telegram для «получения дополнительной информации».

Первым эти атаки заметил специалист чилийской ИБ-компании CronUp Херман Фернандес (Germán Fernández). Исследователь пишет, что эта кампания, вероятно, активна еще с февраля текущего года и уже затронула десятки репозиориев.

Хакеры, стоящие за атаками, используют ник Gitloker в Telegram и представляются ИБ-аналитиками. По данным издания Bleeping Computer, вероятнее всего, они компрометируют чужие учетные записи на GitHub, используя для этого украденные учетные данные.

Сами пострадавшие пишут, что взлом их учетных записей произошел после перехода по вредоносной ссылке в спамерском письме, якобы полученном от рекрутеров GitHub. По данным Фернндеса, злоумышленники использовали для этой кампании два домена: githubcareers[.]online и githubtalentcommunity[.]online.

В своих вымогательских посланиях взломщики утверждают, что похитили информацию жертв, создав резервную копию, которая могла бы помочь восстановить удаленные данные. Фактически они очищают и переименовывают репозиторий, а также добавляют в него файл README.me, в котором сообщают жертвам, что те должны выйти на связь с хакерами через Telegram.

@linuxkalii
Please open Telegram to view this post
VIEW IN TELEGRAM
📂 Основные команды, которые сделают из вас мастера Git. Часть 1

1. Как задать имя пользователя и адрес электронной почты

Имя пользователя нужно, чтобы привязывать коммиты к вашему имени. Это не то же самое, что имя пользователя учётной записи GitHub, с помощью которого выполняется вход в профиль на GitHub. Задать или изменить имя пользователя можно с помощью команды git config. Новое имя будет автоматически отображаться в последующих коммитах, отправленных на GitHub через командную строку. Если хотите скрыть своё реальное имя, можно использовать в качестве имени пользователя Git произвольный набор символов.
git config --global user.name "Tara Routray"


Кроме того, командой git config можно изменять адрес электронной почты, привязанный к вашим коммитам Git. Новый адрес электронной почты будет автоматически отображаться во всех дальнейших коммитах, поданных на GitHub через командную строку.
git config --global user.email "[email protected]"


2. Кэширование учётных данных

Кэшировать учётные данные можно с помощью параметра config с флагом --global. Так вы избавитесь от необходимости вручную вводить имя пользователя и пароль при создании нового коммита.
git config --global credential.helper cache


3. Инициализация репозитория

Создать пустой репозиторий Git или вновь инициализировать существующий можно параметром init. При инициализации он создаст скрытую папку. В ней содержатся все объекты и ссылки, которые Git использует и создаёт в истории работы над проектом.
git init


4. Добавление отдельных файлов или всех файлов в область подготовленных файлов

Добавить отдельный файл в область подготовленных файлов можно параметром add с указанием имени файла. Просто замените somefile.js на актуальное имя.
git add somefile.js


Кроме того, можно добавить все файлы и папки в эту область, предоставив wildcard . вместо имени файла:
git add .


5. Проверка статуса репозитория

Просмотреть статус нужного репозитория можно по ключевому слову status: его действие распространяется на подготовленные, неподготовленные и неотслеживаемые файлы.
git status


6. Внесение изменений однострочным сообщением или через редактор

При создании коммита в репозитории можно добавить однострочное сообщение с помощью параметра commit с флагом -m. Само сообщение вводится непосредственно после флага, в кавычках.
git commit -m "Your short summary about the commit"


Также можно открыть текстовый редактор в терминале для написания полного сообщения коммита. Оно может состоять из нескольких строк текста, в котором подробно характеризуются изменения, внесённые в репозиторий.
git commit


7. Просмотр истории коммитов с изменениями

Просматривать изменения, внесённые в репозиторий, можно с помощью параметра log. Он отображает список последних коммитов в порядке выполнения. Кроме того, добавив флаг -p, вы можете подробно изучить изменения, внесённые в каждый файл.
git log -p


8. Просмотр заданного коммита

Просмотреть полный список изменений, внесённых конкретным коммитом, можно с помощью параметра show, указав идентификатор или хеш коммита. Значение хеша уникально для каждого коммита, созданного в вашем репозитории.
git show 1af17e73721dbe0c40011b82ed4bb1a7dbe3ce29


Также можно использовать сокращённый хеш.
git show 1af17e


9. Просмотр изменений до коммита

Можно просматривать список изменений, внесённых в репозиторий, используя параметр diff. По умолчанию отображаются только изменения, не подготовленные для фиксации.
git diff


Для просмотра подготовленных изменений необходимо добавить флаг --staged.
git diff --staged


Также можно указать имя файла как параметр и просмотреть изменения, внесённые только в этот файл.
git diff somefile.js


10. Удаление отслеживаемых файлов из текущего рабочего дерева

Удалять файлы из текущего рабочего дерева можно с помощью параметра rm. При этом файлы удаляются и из индекса.
git rm dirname/somefile.js


Можно также использовать маски файлов (например *.js, *.html) для удаления всех файлов, соответствующих критерию.
git rm dirname/*.html


#git #doc #cheatsheet
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Lean Engine — движок на C# для алгоритмической торговли

dotnet add package QuantConnect.Lean --version 2.5.16501
dotnet add package QuantConnect.Lean.Engine --version 2.5.16501


Lean Engine — это open-source движок для алготорговли на C#, созданный для простого исследования стратегий и торговли в реальном времени.

Ядро Lean Engine написано на C#, но оно без проблем работает на Linux, Mac и Windows. Lean Engine поддерживает алгоритмы, написанные на Python 3.11 или C#.

Также на Lean работает веб-платформа для алгоритмической торговли QuantConnect.

🖥 GitHub
🟡 Доки

@github_code
Please open Telegram to view this post
VIEW IN TELEGRAM
🌟 Nosey Parker — CLI утилита на Rust для поиска чувствительной информации в текстовых данных и в истории Git

brew install noseyparker

Nosey Parker позволяет находить секреты и конфиденциальную информацию в текстовых данных и не только.
Инструмент полезен как для наступательного, так и для оборонительного тестирования безопасности.

🖥 GitHub
🟡 Примеры использования

@github_code
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Kali Linux
TorCrawl.py это скрипт на Python, предназначенный для анонимного просмотра веб-страниц через сеть Tor.


Он сочетает в себе простоту использования с функциями конфиденциальности Tor, обеспечивая безопасный сбор данных, который невозможно отследить.

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

Github

@linuxkalii
Forwarded from PHP Academy
🔍 Domain Watchdog

Domain Watchdog — это автономное приложение, использующее протокол RDAP для сбора и мониторинга общедоступной информации о доменных именах.

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

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

Данные хранятся в SQL-базе данных, что позволяет избежать дублирования информации и оптимизировать использование пространства.

С учётом планов ICANN перейти на протокол RDAP вместо WHOIS к 2025 году, Domain Watchdog разрабатывается с учётом этого нового стандарта.

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

Github
Demo

@phpshka
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from C++ Academy
🖥 vcpkg

vcpkg — это кроссплатформенный диспетчер пакетов C/C++.

Она дает доступ к тысячам высококачественных библиотек с открытым исходным кодом, чтобы обеспечить возможность приложения и внутренних общих коллекций частных компонентов.

Библиотека, помогает вам управлять библиотеками C и C++ в Windows, Linux и MacOS.

vcpkg new --application
vcpkg add port fmt

Github

@cpluspluc
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from C# (C Sharp) programming
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Идеальный способ освоить Git — это интерактивный тур Git How To.

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

Осваиваем Git здесь.

@csharp_ci
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🦧 Sapiens: новая SOTA ViTs для задач CV, связанных с обнаружением людей 🦧

Sapiens - семейство моделей для задач CV: оценки 2D-позы, сегментации частей тела, оценки глубины.

Модели поддерживают вывод данных в 1K hi-res. и очень легко адаптируются под конкретные задачи путем простого файнтюнига.

Модель предварительно обучена на более чем 300 миллионах изображений человека в естественных условиях. 💙

HF: huggingface.co/papers/2408.12569
Paper https://arxiv.org/pdf/2408.12569
Код: github.com/facebookresearch/sapiens
Kubernetes Resource Recommender - это инструмент CLI для оптимизации распределения ресурсов в кластерах Kubernetes

Он собирает данные об использовании модулей из Prometheus и рекомендует запросы и ограничения для процессора и памяти

Это снижает затраты и повышает производительность

https://github.com/robusta-dev/krr
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ .NES ("dot" NES)

Интересная библиотека предназначенная для разработки под NES (Nintendo Entertainment System).

Инструмент позволяет разработчикам создавать игры для NES с использованием C# и других технологий #NET, предоставляя инструменты и ресурсы для упрощения процесса разработки игр для этой классической игровой платформы.

dotnet new install dotnes.templates

Github

@csharp_1001_notes
2025/05/19 19:28:34
Back to Top
HTML Embed Code: