Git เป็นระบบควบคุมเวอร์ชันแบบกระจาย (Distributed Version Control System) ฟรีและโอเพนซอร์ส สำหรับการพัฒนาซอฟต์แวร์และงานควบคุมเวอร์ชันอื่นๆ มันออกแบบมาเพื่อรับมือกับทุกอย่างจากโปรเจกต์เล็กไปจนถึงใหญ่มาก บนพื้นฐานของ Speed, Efficiency และ Data Integrity
ผู้ใช้ Linux สามารถจัดการ Git ได้หลักจาก Command Line อย่างไรก็ตาม มี GUI Git Clients หลายตัวที่ช่วยให้การใช้งาน Git บน Linux Desktop มีประสิทธิภาพและน่าเชื่อถือมากขึ้น และเสนอการดำเนินการ Command Line เกือบทั้งหมด
ดังนั้น ด้านล่างคือรายการ Git Front-ends ที่ดีที่สุดพร้อม GUI สำหรับผู้ใช้ Linux Desktop
1. GitKraken
GitKraken เป็น Cross-platform, Elegant และ Highly Efficient Git Client สำหรับ Linux ทำงานบน Unix-like Systems เช่น Linux, Mac และ Windows เช่นกัน ออกแบบมาเพื่อเพิ่ม Productivity ของผู้ใช้ Git ผ่านคุณสมบัติ เช่น:
- Visual Interaction และ Hints
- 100% Standalone
- รองรับ Multiple Profiles
- รองรับ Single-click Undo และ Redo
- Built-in Merge Tool
- Search Tool ที่ Fast และ Intuitive
- ปรับตัวเข้ากับ Workspace ของผู้ใช้ง่าย รองรับ Submodules และ Gitflow
- Integrate กับ GitHub หรือ Bitbucket Account
- Keyboard Shortcuts และอื่นๆ อีกมาก
2. Git Cola
Git Cola เป็น Git Client อันทรงพลังและ Configurable สำหรับ Linux ที่เสนอ Sleek GUI เขียนด้วย Python และปล่อยภายใต้ GPL License
Interface ของ Git Cola ประกอบด้วย Collaborative Tools หลายตัวที่สามารถซ่อนและจัดเรียงใหม่ตามต้องการของผู้ใช้ ยังเสนอ Keyboard Shortcuts ที่มีประโยชน์มาก
คุณสมบัติเพิ่มเติมรวมถึง:
- Multiple Sub-commands
- Custom Window Settings
- Configurable และ Environment Variables
- Language Settings
- รองรับ Custom GUI Settings
3. SmartGit
SmartGit เป็น Cross-platform, Powerful, Popular GUI Git Client สำหรับ Linux, Mac OS X และ Windows เรียกได้ว่า Git สำหรับ Professional ช่วยให้ผู้ใช้จัดการ Git Challenges ทุกวัน และเพิ่ม Productivity ผ่าน Workflows ที่มีประสิทธิภาพ
ผู้ใช้สามารถใช้กับ Repos ของตัวเองหรือ Hosting Providers อื่นๆ มาพร้อมคุณสมบัติเด่นๆ ดังนี้:
- รองรับ Git Pull Requests และ Comments
- รองรับ SVN Repositories
- มาพร้อม Git-flow, SSH-client, และ File Compare/Merge Tools
- Integrate แบบแข็งแกร่งกับ GitHub, BitBucket, และ Atlassian Stash
4. Giggle
Giggle เป็น Free GUI Client สำหรับ Git Content Tracker ที่ใช้ GTK+ Toolkit และรันบน Linux เท่านั้น พัฒนาจาก Hackathon ของ Imendio ใน มกราคม 2007
ตอนนี้มันได้รวมเข้ากับ Infrastructure ของ GNOME มันคือ Git Viewer พื้นฐาน ที่ให้ผู้ใช้ Browse Repository History
5. Gitg
Gitg เป็น GNOME GUI Front-end สำหรับดู Git Repositories ประกอบด้วยคุณสมบัติ เช่น – เปิดใช้งาน GNOME Shell Integration ผ่าน App Menu ให้ผู้ใช้ดู Recently Used Repositories และ Browse Repository History
ยังเสนอ File View, Staging Area สำหรับ Compose Commits และ Commit Staged Changes, Open Repository, Clone Repository และ User Information
6. Git GUI
Git GUI เป็น Cross-platform และ Portable Tcl/Tk-based GUI Front-end สำหรับ Git ทำงานบน Linux, Windows และ Mac OS X
มันเน้นที่ Commit Generation โดยให้ผู้ใช้ทำการเปลี่ยนแปลง Repository โดยสร้าง Commits ใหม่, Amend ที่มีอยู่ และสร้าง Branches นอกจากนี้ยังอนุญาตให้ทำ Local Merges และ Fetch/Push ไปยัง Remote Repositories
7. Qgit
QGit เป็น GUI Git Client ที่ Simple, Fast และ Straightforward แต่อย่างไรก็ตาม Powerful เขียนด้วย Qt/C++ ให้ UI ที่ดี และอนุญาตให้ Browse Revisions History, View Patch Content และเปลี่ยนไฟล์แบบ Graphical โดยติดตาม Development Branches ที่แตกต่าง
คุณสมบัติบางส่วน:
- View, Revision, Diffs, File History, File Annotations, และ Archive Trees
- รองรับ Commit Changes
- ให้ผู้ใช้ Apply หรือ Format-patch Series จาก Selected Commits
- รองรับ Drag-and-drop สำหรับ Commits ระหว่างสอง QGit Instances
- Associate Command Sequences, Scripts และอะไรก็ตามที่ Executable ไปยัง Custom Action
- Implement GUI สำหรับ StGit Commands มากมาย เช่น Push/Pop และ Apply/Format Patches
8. GitForce
GitForce เป็น Easy-to-use และ Intuitive GUI Front-end สำหรับ Git รันบน Linux และ Windows รวมถึง OS ใดๆ ที่มี Mono Support
มันให้ผู้ใช้กับ Git Operations ที่พบบ่อยที่สุด และมีพลังพอที่จะใช้งานได้อย่างเดียวโดยไม่ต้องเกี่ยวข้องกับ Command Line Git Tool อื่นๆ
9. Egit
Egit เป็น Git Plugin สำห Eclipse IDE เป็น Eclipse Team Provider สำหรับ Git โปรเจกต์มุ่งเน้น Implement Eclipse Tooling บน JQit Java Implementation ของ Git Eqit ประกอบด้วยคุณสมบัติ เช่น Repository Explorer, New Files, Commit Window และ History View
10. Magit
Magit เป็น Text-based User Interface สำหรับ Git ที่ครอบคลุม ทำให้ช่องว่างระหว่าง Complexity ของ Git Command-line และ GUI แบบดั้งเดิม
ด้วย Magit คุณสามารถจัดการ Version Control Tasks ทั้ง Simple และซับซ้อนได้อย่างง่ายดายด้วย Mnemonic Key Shortcuts Interface ของมันคล้ายกับ Polished Version ของ Git Command Output แต่สิ่งที่ทำให้ Magit แตกต่างคือ Interactive Nature
ทุกชิ้นของข้อมูลที่คุณเห็นสามารถ Action ได้ เกินความสามารถของ Traditional Git GUIs Magit ยังดูแล Automatic Updates ให้ข้อมูลของคุณเป็นปัจจุบัน ลดความซับซ้อน Workflow Git และเพิ่ม Productivity ด้วย Magit
11. GITK (Generalized Interface Toolkit)
GITK เป็น Multi-layered GUI Front-end สำหรับ Git ที่ให้ผู้ใช้ทำงานกับ Software ได้อย่างมีประสิทธิภาพในทุกสถานการณ์ เป้าหมายหลักคือ Enrich Adaptivity ของ Software อย่างชัดเจน รันบน Multi-layered Architecture ที่ Interface Functionality ถูกแยกจาก Look and Feel อย่างเพียงพอ
สำคัญ GITK ให้แต่ละผู้ใช้เลือก Kind และ Style ของ UI ที่เหมาะกับความต้องการ ขึ้นอยู่กับ Ability, Preferences และ Current Environment
สรุป
ในโพสต์นี้ เราได้ Review Git Clients ที่มี GUI สำห Linux ที่รู้จักกันดีบ้าง อย่างไรก็ตาม อาจมีหนึ่งสองตัวที่ขาดหายจากรายการข้างต้น ดังนั้น แจ้งให้เราทราบข้อเสนอแนะหรือ Feedback ผ่านส่วนความคิดเห็นด้านล่างได้เลย คุณยังสามารถบอกเราได้ว่า Git Client พร้อม GUI ไหนเป็นโปรดของคุณ และทำไมคุณชอบใช้มัน