Github
Open in Telegram
@workakkk - по всем вопросам @itchannels_telegram - 🔥лучшие ит-каналы @data_analysis_ml - работа с данными @ai_machinelearning_big_data - машинное обучение @english_forprogrammers - английский для программистов
Show more2 548
Subscribers
No data24 hours
-67 days
+1130 days
Posts Archive
2 547
🖥 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
🟡 Доки
@csharp_ci2 547
📂 Основные команды, которые сделают из вас мастера 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 "dev@tararoutray.com"
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 #cheatsheet2 547
⚡️ Maestro — это инструмент искусственного интеллекта, который использует возможности передовых нейронных сетей для выполнения ваших задач.
https://www.youtube.com/shorts/rHAKj_erZzA
▪ Github: https://github.com/Doriandarko/maestro
@neural
2 547
Repost from Kali Linux
💻 Злоумышленники стирают GitHub-репозитории жертв и требуют выкуп за восстановление данных
Исследователи заметили новую вредоносную кампанию, в рамках которой злоумышленники атакуют репозитории на GitHub, уничтожают их содержимое, а затем просят жертв связаться с ними через Telegram для «получения дополнительной информации».
Первым эти атаки заметил специалист чилийской ИБ-компании CronUp Херман Фернандес (Germán Fernández). Исследователь пишет, что эта кампания, вероятно, активна еще с февраля текущего года и уже затронула десятки репозиориев.
Хакеры, стоящие за атаками, используют ник Gitloker в Telegram и представляются ИБ-аналитиками. По данным издания Bleeping Computer, вероятнее всего, они компрометируют чужие учетные записи на GitHub, используя для этого украденные учетные данные.
Сами пострадавшие пишут, что взлом их учетных записей произошел после перехода по вредоносной ссылке в спамерском письме, якобы полученном от рекрутеров GitHub. По данным Фернндеса, злоумышленники использовали для этой кампании два домена:
githubcareers[.]online и githubtalentcommunity[.]online.
В своих вымогательских посланиях взломщики утверждают, что похитили информацию жертв, создав резервную копию, которая могла бы помочь восстановить удаленные данные. Фактически они очищают и переименовывают репозиторий, а также добавляют в него файл README.me, в котором сообщают жертвам, что те должны выйти на связь с хакерами через Telegram.
@linuxkalii2 547
🌟 Novu — IaaC инфраструктура уведомлений на основе GitOps. Встроенный центр уведомлений, интеграция с электронной почтой, Push и Slack
Novu — open-source инфраструктура уведомлений;
Novu предоставляет унифицированный API, который упрощает отправку уведомлений по нескольким каналам, включая In-App, Push, Email, SMS и Chat. С Novu можно создавать пользовательские рабочие процессы и определять условия для каждого канала, не беспокоясь, что уведомления будут доставлены наиболее эффективным способом.
🖥 GitHub
🟡 Доки
@DevOPSitsec
2 547
🤓 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 на Хабре
@DevOPSitsec2 547
Repost from DevOps
+2
🤓 О том, как поднять свой собственный git-сервер
Начнем с того, что самый простой способ — это создать
git --bare init репозиторий на вашем сервере и написать обычные скрипты для выполнения автоматических задач.
Например, для этого можно использовать скрипт, который запускается в cron, делает git pull репозитория с кодом, а потом собирает и публикует результат.
Но у этого метода есть свои проблемы.
📎 Какие же есть другие варианты?
@DevOPSitsec2 547
Repost from Python/ django
+2
🖥 Как управлять репозиториями git с помощью Python
В этом полезном туториале мы рассмотрим, как управлять репозиториями и реализовать базовый рабочий процесс git с помощью библиотеки GitPython.
Если конкретнее, то мы разберём:
🟡Как управлять репозиториями git с помощью библиотеки GitPython
🟡 Как добавить путь в репозиторий
🟡Как клонировать репозиторий git
🟡Как создавать и отправлять коммиты
🟡Как работать с ветками
🟡Как управлять подмодулями
Все эти знания можно использовать для автоматизации работы с репозиториями, освобождая время для остальных вещей
▶️ Поехали
@pythonl
2 547
⚡️ tartufo.
• Инструмент Tartufo может сканировать репозитории в поисках случайно оставленных токенов и учетных данных. Может проверить всю историю коммитов для поиска секретов.
• Документация: https://tartufo.readthedocs.io
➡️ https://github.com/godaddy/tartufo
2 547
🔥Подборка лучших обучающих каналов для программистов.
➡️ Делитесь с коллегами и сохраняйте себе, чтобы не потерять
⚡Машинное обучение
Machine Learning - запускаем лучшие ИИ модели, пишем код, погружаемся в нейросети
Ml Собеседование - подготовка к собесу по мл, алгоритмам, коду
Ml ru - актуальные статьи, новости, код и обучающие материалы
Ml Jobs - вакансии ML
ML Книги - актуальные бесплатные книги МО
ML чат
🏆 Golang
Golang - изучи один из самых перспективных языков на ит-рынке
Golang собеседование - разбор задач и вопросов с собесов
Golang вакансии -работа для Go разработчика
Golang книги библиотека книг
Golang задачи и тесты
Golang чат
Golang news - новости из мира go
Golang дайджест
💥 Linux /Этичный хакинг
Linux Academy - гайды, секреты и лучшие материалы по Linux
Kali linux - погрузись в мир этичного хакинга и кибербезопасности
linux_kal - kali чат
Информационная безопасность
🚀 Data Science
Анализ данных - полезные фишки, код, гайды и советы, маст-хэв датасаентиста
Data Jobs - ds вакансии
Аналитик данных
Data Science книги - актуальные бесплатные книги
Big data
🛢Базы данных
Sql базы данных - научим работе с базами данных профессионально
Библиотека баз данных
SQL чат
Вакансии Sql аналитик данных
#️⃣C#
С# академия - лучший канал по c#
С# заметки — код, лучшие практики, заметки программиста c#
С# задачи и тесты
С# библиотека - актуальные бесплатные книги
C# вакансии - работа
🐍 Python
Python/django - самый крупный обучающий канал по Python
Python Собеседование - подготовка к собеседовению python и разбор алгоритмов
Pro python - статьи, новости, код и обучающие материалы
Python Jobs - вакансии Python
Python чат
Python книги
☕ Java
Java академия - java от Senior разработчика
Java вакансии
Java чат
Java вопросы с собеседований
Java книги
💻 C++
C++ академия
С++ книги
C++ задачи - подготовка к собеседовению мл, алгоритмам
C++ вакансии
⚡️ Frontend
Javascript академия - крупнейший js канал
React - лучшие гайды и советы по работе с react
Frontend - тутрориалы, уроки, гайды, код
PHP
Книги frontend
Задачи frontend
🦀 Rust
Rust программирование
Rust чат
Rust книги для программистов
📲 Мобильная разработка
Android разработка
Мобильный разработчик гайды и уроки
🇬🇧 Английский для программистов
🧠 Искусственный интеллект
ИИ и технологии
Neural - нейросети для работы и жизни
Книги ИИ
Artificial Intelligence
🔥 DevOPs
Devops для программистов
Книги Devops
🌟 Docker/Kubernets
Docker
Kubernets
📓 Книги
Библиотеки Книг для программситов
💼 Папка с вакансиями:
Папка Go разработчика:
Папка Python разработчика:
Папка Data Science
Папка Java разработчика
Папка C#
Папка Frontend
2 547
📌Система контроля версий git. Первый проект на GitHub
Есть то, что объединяет всех разработчиков, неважно, на Python вы пишите или на чём-то ещё — это понимание git 🤓
Держите мощный туториал по системе контроля версий git и о его реализации на примере GitHub.
Самое то, если только разбираетесь с этим, да и для GitHub-гуру подойдёт, освежить основные понятия не помешает.
Некоторые факты из статьи:
⏩Ветвление по умолчанию может быть "main" или "master" в зависимости от версии Git и настроек окружения.
⏩Создание новой ветки помогает изолировать изменения от основного кода и решать проблемы.
⏩Конфликты могут возникнуть при слиянии изменений из разных веток, и их разрешение требует проверки состояния репозитория и внесения необходимых изменений в файлы.
⏩Работа с удаленными репозиториями на GitHub включает создание аккаунта, создание удаленного репозитория, связывание локального репозитория с удаленным и отправку изменений на GitHub.
⏩Pull Requests (запросы на внесение изменений) используются на платформе GitHub для предложения изменений в код проекта и интеграции их в основную кодовую базу.
🖥 Туториал
@python_job_interview
2 547
Repost from Мобильная разработка
🛠 twostraws/Ignite
Генератор статических сайтов для разработчиков Swift.
Language: Swift
Stars: 376 Issues: 7 Forks: 2
https://github.com/twostraws/Ignite
2 547
Repost from DevOps
📌20 полезных, но малоиспользуемых команд Git
Держите, это кликабельный список:
⏩ Git Web — открыть встроенный графический интерфейс
⏩ Git Notes — прикрепить дополнительную информацию к коммитам
⏩ Git Bisect — дебажить как про
⏩ Git Grep — найти что угодно
⏩ Git Archive — сжать проект для шеринга
⏩ Git Submodules — импортировать другие репозитории в ваш
⏩ Git Bugreport — скомпилировать баг-репорт с информацией о системе
⏩ Git Fsck — проверить и восстановить недоступные объекты
⏩ Git Stripspace — удалить пробелы в конце текста
⏩ Git Diff — сравнить изменения между двумя файлами
⏩ Git Hooks — выполнить скрипт при запуске команды git
⏩ Git Blame — показать, кто написал данную строку
⏩ Git Large File Storage — сохранить большие файлы в git
⏩ Git Garbage Collection — оптимизировать git-репо
⏩ Git Show — легко просмотреть любой объект git
⏩ Git Describe — дать читаемое имя на основе последнего тега
⏩ Git Tag — создать метки версий в определенных точках
⏩ Git Reflog — список всех действий, выполненных над репозиторием
⏩ Git Log — просмотреть журнал коммитов и диаграммы ветвей
⏩ Git Cherry Pick — вытащить фичу в вашу ветку
⏩ Git Switch — быстро переключиться между ветками
Пользуйтесь)
@DevOPSitsec
2 547
Вопрос по Git. В чем разница между merge и rebase?
merge и rebase — это два различных подхода к интеграции изменений в Git.
Merge:
Когда вы выполняете merge, Git создает новый коммит, который объединяет изменения из двух (или более) веток.
Этот коммит имеет два родителя — по одному от каждой ветки.
После слияния ветки сохраняют свою структуру, история коммитов не переписывается.
Merge часто создает «соединительный» коммит.
Rebase:
Когда вы выполняете rebase, Git берет изменения из одной ветки и применяет их к другой ветке, как если бы они были там изначально.
Это переписывает историю коммитов, создавая новые коммиты для изменений в другой ветке.
История становится линейной, и смотрится так, как будто изменения были внесены последовательно.
Сравнение:
Merge сохраняет структуру истории, но может создать дополнительные коммиты-соединители.
Rebase создает более линейную историю, но переписывает коммиты и может быть опасен при работе с общими ветками.
Выбор между merge и rebase зависит от предпочтений команды и конкретного контекста проекта. Важно помнить, что rebase изменяет историю коммитов, поэтому его следует использовать только для локальных веток, которые вы еще не отправили в общий репозиторий.
#вопросы_с_собеседований
2 547
Repost from Машинное обучение RU
🔥 Крутейшая подборка для Дата Саентиста. Лучшие бесплатные курсы, книга, разбор вопросов с собеседований, roadmap, полезные материалы по Python, Go, Linux и многое другое.
▪100 вопросов для подготовки к собесу Data Science
▪Видео
▪100 вопросов для подготовки к собесу Python
▪Вопросы Middle
▪Видео
▪Вливаемся в Data Science: подробный roadmap что и где изучать
▪Machine Learning инженер: что/где/как изучать, чтобы въехать
▪ Моя большая практическая шпаргалка SQL (SQLite) с готовыми запросами
▪ Шпаргалка для алгособеса — алгоритмическая сложность, структуры данных, методы сортировки и Дейкстра
▪ Шпаргалка для алгособеса 2 — графовые и строковые алгоритмы
▪40 Полезных инструментов Дата Саентиста
▪Go — 100 вопросов/заданий с собеседований
▪Видео
▪ Где изучать Linux в 2024. Бесплатные курсы, книги и ресурсы
▪Видео
▪ Бесплатные курсы для изучения искусственного интеллекта в 2024 году
▪NumPy: оттачивайте навыки Data Science на практике
▪Numpy полный бесплатный курс
▪Где изучать Python в 2024. Бесплатные курсы, книги и ресурсы
▪ Видео
▪Где искать работу Дата Саентисту в 2024 году
▪Ресурсы для поиска работы Python разработчикам
▪ Бесплатные курсы по большим языковым моделям для дата-сайентистов
@machinelearning_ru
2 547
Вариант для тех, кто ищет виртуальный сервер с хорошей веб-защитой — Aéza:
– Виртуальные сервера до 6.0 ГГц на лучших процессорах;
– Профессиональная фильтрация атак StormWall;
– Круглосуточная поддержка;
– Anycast фильтрация;
– Низкие цены;
– 15% кешбэка по ссылке.
Бесконечно можно смотреть на три вещи: на огонь, воду и скидку от Aeza!
Говорят: твоё от тебя не уйдет. А зачем ждать? Динозавры тоже ждали и остались в прошлом
Используй 50% скидку и погнали в будущее!
Кроме того, сейчас Aéza раздает личные бесплатные сервера, забираем тут. Регистрация, подписка, платежи не потребуются.
Реклама. Индивидуальный предприниматель Лобанов Леонид Константинович. ИНН 781625705648 erid: LjN8KEr3S
2 547
🖥 Управление GitHub-репозиториями: best practices
Для DevOps-инженера управление GitHub-репозиториями имеет не меньшее значение, чем содержащийся в них код.
В этом посте мы рассмотрим 3 совета по эффективному управлению репозиториями на GitHub, что-то из этого довольно очевидно, но уверен будет полезно.
〰️ Четко придерживайтесь соглашения об именовании репозиториев
⏩Префикс для обозначения проекта или команды. Если в вашей организации есть несколько проектов или команд, названия репозиториев могут начинаться с префиксов, идентифицирующих проект или команду. Например,
teamalpha_authentication_service или teambravo_data_pipeline.
⏩Описательные имена. Репозитории должны иметь описательные и конкретные названия, которые подскажут вам, что в них находится. Например, customer_support_ticketing_system или machine_learning_model_trainer.
⏩Указание на основной технологический стек. Это может быть особенно полезно для архитектур микросервисов. Например, image_processor_python или frontend_react_app.
⏩Версии или метки состояния. Если вы поддерживаете разные версии инструмента или библиотеки, или если в репозитории хранится что-то на определенной стадии разработки, укажите это в названии. Например, payment_gateway_v2 или inventory_management_deprecated.
⏩Избегайте специальных символов. Придерживайтесь букв и цифр с дефисами и символами подчеркивания, чтобы сохранить URL-совместимость и избежать путаницы. Например, invoice-generator или invoice_generator.
⏩Указание на юзкейс. Иногда полезно указать, является ли репозиторий библиотекой, сервисом, демо-версией или документацией. Например, authentication_lib, payment_api_service, demo_inventory_app, api_documentation.
〰️ Классифицируйте репозитории по темам
Добавлять темы в GitHub-репозитории полезно по нескольким причинам, в том числе:
⏩Видимость. Темы облегчают другим людям поиск вашего репозитория. Когда кто-то ищет определенную тему, в результаты поиска попадут репозитории, для которых указана эта тема.
⏩Организация. Темы помогают организовывать репозитории. Вы можете группировать репозитории по их назначению, технологическому стеку или любым другим критериям.
⏩Сообщество. Указание тем поможет вам познакомиться с людьми, которые интересуются теми же темами. Когда кто-то просматривает репозиторий с определенной темой, он может увидеть другие репозитории с той же темой.
⏩Ознакомление. Указанные темы предоставляют информацию о технологиях и инструментах, популярных в вашей организации. Вы можете использовать эту информацию для выявления тенденций и принятия обоснованных решений об используемых технологиях и инструментах.
⏩Стандартизация. Темы помогают стандартизировать категоризацию репозиториев. Вы можете использовать одни и те же темы во всех репозиториях, чтобы обеспечить согласованность.
〰️ Используйте README.md для документирования репозитория
Хорошо написанный файл README.md может вам помочь в следующих вещах:
⏩Привлечение контрибьюторов. Этот файл предоставляет потенциальным контрибьюторам информацию, необходимую для понимания проекта и начала работы с ним.
⏩Онбординг. README.md поможет новым членам команды освоиться в проекте.
⏩Документация. Файл README.md служит документацией для проекта. Он предоставляет пользователям информацию, необходимую для работы с проектом.
⏩Продвижение. Этот файл предоставляет потенциальным пользователям информацию, необходимую для понимания проекта и принятия решения о его использовании.
⏩Стандартизация. README.md помогает стандартизировать способ документирования проектов. Это обеспечивает последовательную структуру документирования проектов.
📎 Ещё 7 полезных советов
@DevOPSitsec2 547
⚡️ Визуальный клиент Git для терминала
Выведите свою работыу с git в терминале на новый уровень с помощью Lazy Git 👇
Инструмент написан на Go, в нем есть пакеты под популярные дистрибутивы Linux и сборка под Windows.
Git — очень удобный и мощный инструмент. Но начать им пользоваться сразу на полную не всегда просто. Так что подобные инструменты помогают перестать бояться мержей, ребейзов и других страшных слов.
▪ Github
#git
2 547
📌Всё про сортировку веток Git
Запустив
git branch в репозитории, вы обычно получаете список веток в алфавитном порядке. Это может раздражать, когда у вас много веток (если только у вас нет очень жесткой системы именования по номеру тикета или чего-то подобного).
⏩Не проблема, это можно изменить. Выполните в вашем репозитории следующую команду:
git branch --sort=-committerdate
Это отсортирует все ваши ветки по дате их последнего коммита
Для сортировки доступны такие опции:
- authordate
- committerdate
- creatordate
- objectsize
- taggerdate
⏩Кроме того, если хотите всегда сортировать по одному из этих параметров, можно установить это в настройках:
git config --global branch.sort -committerdate
⏩Также можно задать псевдоним:
git config --global alias.brcd "branch --sort=-committerdate".
Подробнее о работе с ветками можно почитать тут, ловите ссылки:
📎 Ветвление Git с примерами из реальной жизни
📎 Как удалить ветку в Git
📎 Как переименовать локальную ветку в Git
@DevOPSitsec2 547
Это подробный гайд по GIT с самыми нужными командами для работы
https://raw.githubusercontent.com/wiki/Kovalevskyi-Ac..
