tl; dr: GitEye = найінтуїтивніший інтерфейс користувача, найшвидший робочий процес, який легко налаштовується
Я тривалий час Poweruser TortoiseHg Workbench, і мені це подобається, тому, природно, мої повністю виражені критерії були в основному на ньому:
* 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
Я перевірив наступні програми:
- гіт-кола
- GitEye
- ГІТК
- git-gui
- QGit
- хихикати
- тигр
- SmartGit
- gitg
- Кролик VCS
- GitKraken
- GitX
- git-dag
- Bazaar Explorer + bzr-git
- TortoiseHg + hggit (найкращий інтерфейс користувача, hggit не працює)
Результати
Більшість тестованих клієнтів git GUI - це повністю ****, нижче - 2 найкращих та 1, що не так ****, як інші.
Легенда
- = feature missing or so **** it doesn't count
~ = feature somewhat matches my requirements
+ = feature works like I want :)
1 місце: GitEye
Інтуїтивно зрозумілий інтерфейс користувача, найшвидший робочий процес, що легко налаштовується
~ 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?]
Примітка. Якщо подання файлів Git перестає працювати на вас, тоді використовуйте аналогічне подання Git Staging.
2 місце: SmartGit
гарний інтегрований файл розл. вчинення незрозумілого, захована історія, вимагає ліцензії
~ 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 місце: QGit
прекрасна чітка історія, виконувати UX безладно, легкі, спеціальні команди можна додати
+ 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
Почесна згадка: GitKraken
Він все ще знаходиться на стадії розробки (1.5.1 досі відсутня підтримка HiDPI), але виконує основну роботу. Це може легко конкурувати з GitEye та SmartGit. Це краще, ніж QGit точно.
Всі інші:
Я розчарований типом ****, зробленого, щоб перейти як клієнт з git. Я думаю, що їхні автори вважають, що більш ефективно робити щоденні прості речі в командному рядку, і вони базували своїх клієнтів на тому неефективному робочому процесі.
git mergetool
. Я вважаю за краще GUI meld як mergetool.