Eris Client
Narzędzie CLI napisane w języku C, które pozwala zarządzać procesem pracy z Git za pomocą prostych poleceń — wspomagane konwencjonalne zatwierdzenia, zatwierdzanie i wysyłanie zmian w jednym kroku, tworzenie gałęzi, rebasing oraz makra projektowe, które można ponownie uruchamiać.
Eris to CLI dla programistów, które opakowuje Twój przepływ pracy z gitem w ustrukturyzowany proces zatwierdzania, lokalne makra projektu oraz router poleceń oparty na Prologu, obsługujący łączenie i negację.
Używasz eris zamiast surowego gita w codziennej pracy.
Co robi
eris init [nazwa] — tworzy katalog .eris/ w bieżącym folderze, zapisuje plik makr i dodaje .eris/ do lokalnego pliku wykluczeń gita, aby nigdy nie pojawiał się w Twoim repozytorium.
eris commit / eris copush — interaktywne zatwierdzanie + wypychanie w jednym kroku. Pyta o wybór konwencjonalnego typu zatwierdzenia (feat, fix, refactor itp.) z menu, następnie prosi o wiadomość, formatuje ją jako typ: wiadomość, dodaje wszystko do stagingu, zatwierdza i wypycha. Działa z dowolnego miejsca w projekcie.
eris ignore <plik> — dodaje plik do .eris/.eris.ignore, aby był pomijany podczas copush. Dotyczy projektu, nie globalnie.
eris alias add <nazwa> do <polecenie> do <polecenie> — zapisuje nazwane makro (sekwencję poleceń powłoki) do .eris/.eris.macros.
eris alias run <nazwa> / eris run <nazwa> — uruchamia zapisane makro.
eris rebuild — przebudowuje binarny plik eris przy użyciu CMake.
eris root — wyświetla wykryty katalog główny projektu eris.
Łączenie poleceń
Router poleceń jest napisany w Prologu. Obsługuje &&, || oraz not bezpośrednio na liście argumentów:
eris init myapp && eris commit # zatwierdź tylko jeśli init się powiódł
eris init || true # zignoruj błąd
eris not init # zakończ sukcesem, gdy init się nie powiedzie
Makra
Makra są przechowywane w .eris/.eris.macros w katalogu głównym projektu:
[deploy]
make build
git push origin main
ssh prod "systemctl restart app"
Dodawanie z separatorem do (bez potrzeby cudzysłowów):
eris alias add deploy do make build do git push origin main
Dodawanie z cudzysłowami (dla poleceń zawierających średniki lub składnię powłoki):
eris alias add test "npm run lint" "npm test"
Uruchamianie:
eris run deploy
Instalacja
make install
To buduje plik binarny, kopiuje go do /usr/local/bin/eris i dodaje alias do Twojego .bashrc lub .zshrc (wykrywany automatycznie). Następnie:
source ~/.zshrc # lub ~/.bashrc
Zależności (cmake, gcc, libcurl, libssl itp.) są sprawdzane i instalowane automatycznie podczas budowania, jeśli ich brakuje.
Budowanie ze źródła
make # konfiguracja + budowanie (Debug)
make CONFIG=Release
make JOBS=8
Wymaga: cmake, gcc/g++, libcurl-dev, libssl-dev, pkg-config.
Opcjonalnie: SWI-Prolog (libswipl-dev) dla routera Prolog — w razie braku używany jest router w C.
