أقوم بمعظم أعمالي في git في محطة طرفية ولكنني كثيرًا ما وجدت نفسي أستخدم واجهات المستخدم الرسومية لـ git لبعض حالات الاستخدام مثل: الفهرس والالتزام والفرق والتخزين واللوم والتسجيل.
لسوء الحظ، تفشل جميع واجهات المستخدم الرسومية الشائعة لـ git في المستودعات العملاقة أو تصبح غير مستجيبة وغير قابلة للاستخدام.
توفر لك GitUI تجربة المستخدم والراحة التي توفرها واجهة المستخدم الرسومية git، ولكن مباشرة في جهازك الطرفي بينما تكون محمولة وسريعة ومجانية ومفتوحة المصدر.
بالنسبة لعرض تقديمي (شرائح) للقاء RustBerlin، قمت بمقارنة lazygit
و tig
و gitui
من خلال تحليل مستودع Linux git بأكمله (الذي يحتوي على أكثر من 900 ألف التزام):
وقت | الذاكرة (جيجابايت) | ثنائي (ميجابايت) | يتجمد | حوادث | |
---|---|---|---|---|---|
gitui | 24س ✅ | 0.17 ✅ | 10 | لا ✅ | لا ✅ |
lazygit | 57 ثانية | 2.6 | 25 | نعم | أحيانا |
tig | 4 م 20 ثانية | 1.3 | 0.6 ✅ | أحيانا | لا ✅ |
هذه هي الأهداف عالية المستوى قبل استدعاء 1.0
:
في الوقت الحالي، لا تحل هذه الأداة محل git Shell بشكل كامل، إلا أن كلتا الأداتين تعملان بشكل جيد جنبًا إلى جنب.
أولويات gitui
هي على الميزات التي تجعلني غاضبًا عند القيام بها على git Shell ، مثل التخزين أو الخطوط المرحلية أو الكتل. في النهاية، سأتمكن من العمل على جعل gitui
حلاً شاملاً - ولكن لهذا أحتاج إلى المساعدة - فهذا مجرد مشروع وقت فراغ في الوقت الحالي.
ورحب بكل الدعم! الرعاة كذلك! ❤️
GitUI في مرحلة تجريبية وقد يحتوي على أخطاء وميزات مفقودة. ومع ذلك، بالنسبة للاستخدام الشخصي فهو مستقر إلى حد معقول ويتم استخدامه أثناء تطوير نفسه.
pacman -S gitui
sudo dnf install gitui
متوفر في تراكب dm9pZCAq
sudo eselect repository enable dm9pZCAq
sudo emerge --sync dm9pZCAq
sudo emerge dev-vcs/gitui::dm9pZCAq
sudo zypper install gitui
brew install gitui
port install gitui
winget install gitui
scoop install gitui
choco install gitui
نيكسبكج
nix-env -iA nixpkgs.gitui
نيكس أو إس
nix-env -iA nixos.gitui
pkg install gitui
conda install -c conda-forge gitui
متاح للتحميل في الإصدارات
الثنائيات المتاحة ل:
تحتوي جميعها على ملف ثنائي واحد
انظر NIGHTLIES.md
الحد الأدنى لإصدار rust
/ cargo
المدعوم: 1.70
لبناء تبعية opensl (راجع https://docs.rs/openssl/latest/openssl/)
لتشغيل مجموعة الاختبار الكاملة، يلزم وجود لغة python (ويجب أن تكون قابلة للاستدعاء كـ python
)
إن أبسط طريقة لبدء اللعب باستخدام gitui
هي بناء cargo
وتثبيتها باستخدام cargo install gitui --locked
. إذا لم تكن على دراية بالصدأ والبضائع: البدء مع الصدأ
تمكين تتبع libgit2
يعمل إذا تم إنشاء libgit2
باستخدام -DENABLE_TRACE=ON
يتم تمكين هذه الميزة افتراضيًا، لتعطيلها: cargo install --no-default-features
راجع صفحة الأسئلة الشائعة
للتشغيل مع تمكين التسجيل، قم بتشغيل gitui -l
.
سيتم تسجيل الدخول إلى:
$HOME/Library/Caches/gitui/gitui.log
XDG
: $XDG_CACHE_HOME/gitui/gitui.log
$HOME/.cache/gitui/gitui.log
%LOCALAPPDATA%/gitui/gitui.log
يجب أن يعمل gitui
تلقائيًا على كل من السمات النهائية الفاتحة والداكنة.
ومع ذلك، يمكنك تخصيص كل شيء حسب رغبتك: راجع السمات.
يمكن تخصيص روابط المفاتيح: راجع تكوين المفاتيح حول كيفية تعيينها على روابط تشبه vim
.
انظر CONTRIBUTING.md.
شكرًا لجميع المساهمين الذين ساعدوا في جعل GitUI مذهلاً! ❤️
هل تريد أن تصبح مشاركًا في الصيانة؟ نحن نبحث عنك!