@repo_science · Post #4121 · 06.05.2024 г., 22:03
#git 🖥 RelaGit Beta The first Beta Release of RelaGit is now available to download. https://rela.dev/ ----- Main channel: @repo_science Coupons: @freecoupons_reposcience -----
Hashtags
TGINSIGHT SIMILAR POSTS
Изворен канал @pythonotes · Post #210 · 3 фев.
Что делать если нужно поставить какую-то Python-библиотеку а root-прав нет? То есть в систему библиотеку никак и ничего не поставить. Есть как минимум два способа это решить правильно! 🔸 Сделать виртуальное окружение и ставить там что угодно. Это позволит создать полностью независимое исполняемое окружение для ваших приложений. Все библиотеки будут храниться в домашней директории юзера а значит доступ на запись имеется. Создать очень просто: python3 -m venv ~/venvs/myenvname Теперь активируем окружение # Linux source ~/venvs/myenvname/bin/activate # Windows %userprofile%\venvs\myenvname\Scripts\activate.bat Можно ставить любые библиотеки и запускать приложение. Это стандартный метод работы с любым проектом. Если еще не используете его, то пора начинать. Даже при наличии root доступа! 🔸 Бывает, что нет возможности запустить приложение из своего виртуального окружения. Например, его запускает какой-то сервис от вашего юзера и вставить активацию окружения вы не можете. В этом случае можно установить библиотеки для Python не глобально в систему, а только для юзера. Выполните этот код в консоли: python3 -m site Вы получите что-то такое: sys.path = [ '/home/user', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/home/user/.local/lib/python3.7/site-packages', ... ] USER_BASE: '/home/user/.local' USER_SITE: '/home/user/.local/lib/python3.7/site-packages' ENABLE_USER_SITE: True Нас интересует параметр USER_SITE. Это путь к пользовательским библиотекам, которые доступны по умолчанию, если они есть. Именно сюда будут устанавливаться модули если добавить флаг --user при установке чего-либо через pip pip install --user requests Для этой команды не нужны root-права. После неё можно запускать системный интерпретатор без виртуальных окружений и установленная библиотека будет доступна для текущего юзера. Параметр USER_BASE показывает корневую директорию для хранения user-библиотек. Её можно изменить с помощью переменной окружения PYTHONUSERBASE export PYTHONUSERBASE=~/pylibs python3 -m site ... USER_BASE: '/home/user/pylibs' USER_SITE: '/home/user/pylibs/lib/python3.7/site-packages' Получается некоторое подобие виртуального окружения для бедных 😁 которое можно менять через эту переменную (не делайте так!Лучше venv!) 🔸 Дописывание пути в PYTHONPATH Этот способ не входит в список "двух правильных", но тоже рабочий. Здесь придётся сделать всё несколько сложней. Сначала ставим библиотеку в любое место указывая путь установки pip3 install -t ~/mylibs modulename Библиотека установится без привязки к какому-либо интерпретатору. То есть по умолчанию не будет видна. Теперь в нужный момент добавляем этот путь в sys.path или в PYTHONPATH. Не буду советовать так делать. Единственный раз когда этот способ мне пригодился и решил поставленную задачу, это при создании общей библиотеки для кластера компьютеров. Модули лежат в сети и подгружаются для всех из одного и того же места. То есть обновлять файлы требуется только один раз а не на всех хосты отдельно. Минусы такого подхода: ▫️Нужно всем хостам пробить нужный путь в .bashrc или ещё куда-то чтобы он сетапился на старте. ▫️Чем больше хостов тем больше нагрузка на сеть. Иногда такой способ не подходит именно по этой причине. Тогда Ansible вам в помощь. ▫️Не очень подходит если хосты с разными операционками. Некоторые библиотеки различаются для Linux и Windows (там, где есть бинарники) и приходится мудрить более сложные схемы. #tricks#basic
Пребарај: #git
@repo_science · Post #4121 · 06.05.2024 г., 22:03
#git 🖥 RelaGit Beta The first Beta Release of RelaGit is now available to download. https://rela.dev/ ----- Main channel: @repo_science Coupons: @freecoupons_reposcience -----
Hashtags
@tg_infosec · Post #3829 · 05.12.2025 г., 18:02
👩💻 История Git. • Git — это одна из систем контроля версий проекта. Она позволяет фиксировать все изменения файлов выбранной директории (проекта) и при желании откатить эти изменения до выбранной версии. Это не единственная система контроля версий, но одна из самых популярных. • 7 апреля 2005 года состоялся первый выпуск Git, созданной Линусом Торвальдсом за несколько недель для управления разработкой ядра Linux вместо BitKeeper, так как никакая другая система контроля исходного кода не удовлетворяла требованиям в плане распределённости ресурсов. Теперь этот проект значительно вырос и в этом году ему исполнилось 20 лет. • Разработка проекта Git была инициирована Линусом Торвальдсом в 2005 году, после того, как компания BitMover разорвала договорённость о предоставлении бесплатного доступа к системе управления версиями BitKeeper, которая использовалась в разработке ядра Linux вплоть до выпуска 2.6.11. Конфликт возник после отказа лаборатории OSDL прекратить разработку открытого инструментария, позволяющего напрямую работать с репозиториями BitKeeper, что нарушало изначальное соглашение между разработчиками ядра и компанией BitMover. • После прекращения возможности использования BitKeeper Линус Торвальдс попытался найти подходящую для разработки ядра систему контроля версий, и склонялся к переходу на monotone. Но в итоге все существующие системы его не устроили и было принято решение создать собственную распределённую систему управления исходными текстами, изначально отвечающую всем требованиям разработчиков ядра. За считанные недели был написан первый прототип, состоящий примерно из 1000 строк кода на языке C. Далее в проекте появились git log и git rebase. • В декабре 2005 года состоялся выпуск формального стабильного релиза системы управления исходными текстами и патчами GIT 1.0.0, на базе которого организована разработка Linux ядра. За восемь месяцев прошедших после прекращения использования BitKeeper, Git превратился из наспех созданной утилиты (1000 строк на C) в специализированный инструмент разработки Linux ядра. Для сравнения git-0.01.tar.gz занимал 40 КБ, а git-1.0.0.tar.gz в 13 раз больше — 556KБ. В составе Git первых версий встречались части написанные на C, Shell, Perl и Python. • Важно понимать, что именно для этого был создан Git. Не для того, чтобы быть системой контроля версий, а, по сути, для того, чтобы быть лучшим способом делать патчи и тарболы (tarball) — производить снимок набора файлов и показывать различия, которые можно обсудить. В первую очередь, именно так была спроектирована его структура данных (связанные списки деревьев файлов, хранилище BLOB-объектов с адресацией по содержимому), и эта структура принципиально не изменилась с первого коммита и по сей день. • В настоящее время большинство открытых проектов используют в процессе разработки Git, в том числе ядро Linux, Android, LibreOffice, Systemd X.Org, Wayland, Mesa, Gstreamer, Wine, Debian, DragonFly BSD, Perl, Eclipse, GNOME, KDE, Qt, Ruby on Rails, PostgreSQL, VideoLAN, PHP, Xen, Minix и десятки тысяч других решений на базе веб-фронтендов, в числе которых — GitWebAdmin, GitLab, Gitblit, Gerrit, Gitweb, Kallithea, Gitea. #Git
Hashtags
@tg_infosec · Post #3567 · 09.09.2025 г., 07:03
👩💻"89 things I know about Git commits". • Объемный чек-лист, который может оказаться полезным при работе с Git: https://www.jvt.me/posts/2024/07/12/things-know-commits/ #git
Hashtags
@tg_infosec · Post #3007 · 10.03.2025 г., 13:33
👩💻Oh My Git. • Поделюсь с Вами достаточно увлекательной и, самое главное, полезной open source игрой для изучения GIT. Тут Вам и отдельный режим для новичков (в виде карточек) и для продвинутых пользователей (в терминале), можете даже создавать свои собственные уровни. В общем и целом, игра действительно полезная: Вы подключаете реальный репозиторий, изучаете и выполняете команды, наблюдаете результат в режиме реального времени. ➡️https://ohmygit.org #Git
Hashtags
@tg_infosec · Post #2921 · 08.02.2025 г., 12:29
👩💻 Базовый курс по Git. • Git: Урок 0. Подготовка и Введение; • Git: Урок 1. Первый коммит; • Git: Урок 2. Проверка состояния; • Git: Урок 3. Индексация файлов; • Git: Урок 4. История коммитов; • Git: Урок 5. Git checkout - Назад в будущее; • Git: Урок 6. Отмена индексированных файлов; • Git: Урок 7. Revert - Отмена коммита; • Git: Урок 8. Решение простого конфликта; • Git: Урок 9. Ветки и их применение; • Git: Урок 10. Слияние веток и решение конфликтов слияния; • Git: Урок 11. Rebase vs. Merge - Что такое git rebase? • Git: Урок 12. Удаленный репозиторий и git clone; • Git: Урок 13. Загружаем изменения на удаленный репозиторий; • Git: Урок 14. Обновляем код манерой merge и rebase; • Git: Урок 15. Что такое Origin и для чего нужен stash? #Git
Hashtags
@tg_infosec · Post #2919 · 07.02.2025 г., 12:29
👩💻 Бесплатная книга Pro Git. • Git — это одна из систем контроля версий проекта. Она позволяет фиксировать все изменения файлов выбранной директории (проекта) и при желании откатить эти изменения до выбранной версии. Это не единственная система контроля версий, но одна из самых популярных. • Сегодня поделюсь бесплатной книгой на русском языке, которая содержит в себе 10 глав и несколько приложений: - Введение; - Основы Git; - Ветвление в Git; - Git на сервере; - Распределённый Git; - GitHub; - Инструменты Git; - Настройка Git; - Git и другие системы контроля версий; - Git изнутри. - Приложение A: Git в других окружениях; - Приложение B: Встраивание Git в ваши приложения; - Приложение C: Команды Git. ➡️ Скачать в удобном формате или читать онлайн: https://git-scm.com/book/ru/v2 #Git
Hashtags
@sudo_recast · Post #374 · 15.08.2022 г., 08:17
git diff -G. 忽略文件權限改動。 #git
Hashtags
@AprilNEALab · Post #31 · 28.02.2024 г., 03:00
#Git https://jvns.ca/blog/2024/02/16/popular-git-config-options/#pull-ff-only-or-pull-rebase-true
Hashtags
@thedevs · Post #2092 · 24.12.2023 г., 09:20
Git branches: intuition & reality. #article#git @thedevs https://thedevs.link/jMWhEC
@thedevs · Post #2014 · 16.11.2022 г., 09:05
Idiot proof git. #article#git @thedevs https://thedevs.link/MYPs0A
@Nomad01290 · Post #4091 · 06.08.2022 г., 21:54
Steps to deal with specific cases you run into while using git https://github.com/k88hudson/git-flight-rules #programming#git
Hashtags
@repo_science · Post #3539 · 26.08.2023 г., 19:41
#softSkills#git 📚 Learning GitHub Actions (2023) 🔗Link ----- Main channel: @repo_science Coupons: @freecoupons_reposcience -----
Hashtags