tl; dr: GitEye = en sezgisel kullanıcı arayüzü, en hızlı iş akışı, özelleştirilebilir
Ben uzun zamandır TortoiseHg Workbench poweruser'im ve onu seviyorum, bu yüzden doğal olarak tamamen benim görüşüme göre kriterlerim çoğunlukla buna dayanıyordu:
* full history visible in main window
* beautiful tree (DAG), branches CLEARLY separated
* current branch clearly visible in history
* superclear list of changed/added files (list + diff detail)
* each changed/added file can be committed separately (or in groups)
* current branch clearly visible while committing
* clear push/pull etc buttons
* shelve = stash {not to be confused with patches}
* revert
* graft = cherry pick
* max git features
* HiDPI support
* all changes become visible on refresh
* refresh shortcut
Aşağıdaki uygulamaları test ettim:
- Git-cola
- GitEye
- Gitk
- Git-gui
- QGit
- kıkırdama
- tıg
- SmartGit
- gitg
- RabbitVCS
- GitKraken
- GitX
- Git-dag
- Çarşı Kaşifi + bzr-git
- TortoiseHg + hggit (en iyi UI, hggit çalışmıyor)
Sonuçlar
Test edilen git GUI istemcilerinin çoğu **** tamamlandı, aşağıda en iyilerden 2'si ve 1'i diğerleri kadar **** değil.
efsane
- = feature missing or so **** it doesn't count
~ = feature somewhat matches my requirements
+ = feature works like I want :)
1. sıra: GitEye
en sezgisel kullanıcı arayüzü, en hızlı iş akışı, son derece özelleştirilebilir
~ full history visible in main window [in a separate tab, same UI pattern facilitates looking at the history of separate files]
+ beautiful tree (DAG), branches CLEARLY separated
+ current branch clearly visible in history
+ superclear list of changed/added files (list + diff detail)
+ each changed/added file can be committed separately
+ current branch clearly visible while committing
+ clear push/pull etc buttons
+ shelve = stash [Stashes clearly visible in sidepane]
+ revert
+ graft = cherry pick
+ max git features
~ HiDPI support
+ all changes become visible on refresh
- refresh shortcut [you can set one, but it wont work. bug?]
Not: Git Dosyaları görünümü sizinle çalışmayı durdurursa, benzer Git Hazırlama görünümünü kullanın.
İkincilik: SmartGit
güzel entegre dosya fark. belirsiz, tarih gizlenmiş, bir lisans gerektirir
~ full history visible in main window [separate window, I found myself constantly confusing both windows]
- beautiful tree (DAG), branches CLEARLY separated
- current branch clearly visible in history
+ superclear list of changed/added files (list + diff detail)
~ each changed/added file can be committed separately [UI not clear enough]
- current branch clearly visible while committing
+ clear push/pull etc buttons
+ shelve = stash
+ revert
+ graft = cherry pick
+ max git features
+ HiDPI support
+ all changes become visible on refresh [refreshes automatically]
+ refresh shortcut [refreshes automatically]
3. sıra: QGit
güzel açık geçmiş, UX dağınık, hafif, özel komutlar eklenebilir
+ full history visible in main window
+ beautiful tree (DAG), branches CLEARLY separated
+ current branch clearly visible in history
~ superclear list of changed/added files (list + diff detail) [doesn't show new files in main window]
- each changed/added file can be committed separately
- current branch clearly visible while committing
~ clear push/pull etc buttons [could be added via custom commands]
- shelve = stash
- revert
- graft = cherry pick
- max git features
+ HiDPI support
~ all changes become visible on refresh [except for new files]
+ refresh shortcut
Onurlu söz: GitKraken
Hala gelişim aşamalarında (1.5.1 hala HiDPI desteği eksik), ancak temel işleri yapıyor. Bu GitEye ve SmartGit ile kolayca rekabet edebilir. Kesinlikle QGit'ten daha iyi.
Tüm kalan:
Git istemcisi olarak geçmek için yapılan **** türü beni hayal kırıklığına uğrattı. Sanırım yazarları komut satırında her gün basit şeyler yapmanın daha verimli olduğunu düşünüyor ve müşterilerini bu yetersiz iş akışına dayandırıyorlar.
git mergetool
. Meld GUI'yi birleştirme aracı olarak tercih ederim.