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.