Bạn đang code feature A, nhận được Slack ping về bug khẩn, switch sang branch khác để fix, rồi quên mất WIP của mình. Hoặc tệ hơn: bạn đang chờ AI agent viết code nhưng không biết commit nào là của agent, commit nào là của mình.
GitButler sinh ra để giải quyết đúng những bài toán đó — Git client thế hệ mới, xây dựng đặc biệt cho kỷ nguyên AI coding.
GitButler Là Gì?
GitButler là một Git client desktop hiện đại, mã nguồn mở (Fair Source → MIT từ 2025), được xây dựng từ đầu với triết lý: "làm việc song song với nhiều branch cùng lúc mà không cần checkout."
Không giống SourceTree, GitHub Desktop, hay GitKraken — GitButler không chỉ là wrapper cho Git CLI. Nó thay đổi hoàn toàn cách bạn tư duy về branching thông qua khái niệm Virtual Branches (branch ảo).
| Tiêu chí | Git Truyền Thống | GitButler ✨ |
|---|---|---|
| Làm việc nhiều feature cùng lúc | ❌ Phải switch branch | ✅ Virtual branches song song |
| Sửa commit giữa stack | git rebase -i (phức tạp) | ✅ Drag & drop trực quan |
| Undo mọi thao tác | Reflog (arcane) | ✅ Timeline UI |
| Xử lý conflict | Block toàn bộ pipeline | ✅ First-class, không block |
| Tích hợp AI agents | ❌ Không có | ✅ Built-in hooks + CLI |
| Tạo PR GitHub/GitLab | Cần tool ngoài | ✅ Native, tích hợp sẵn |
Cài Đặt GitButler
🍎
macOS
Apple Silicon & Intel. macOS 11+
Hoặc tải .dmg từ gitbutler.com/downloads
🐧
Linux (Ubuntu 22.04+)
Official DEB package
sudo apt install ./gitbutler-*.deb
🪟 Windows 10/11
Cài qua winget hoặc Chocolatey:
winget install GitButler.GitButler
# Hoặc Chocolatey
choco install gitbutler
Cài Dependencies Linux
sudo apt update && sudo apt install -y libwebkit2gtk-4.1-dev build-essential curl wget file libxdo-dev libssl-dev libayatana-appindicator3-dev librsvg2-dev cmake pkg-config
⚠️ Lưu ý Linux NVIDIA: Nếu màn hình blank sau khi mở, thêm: __NV_DISABLE_EXPLICIT_SYNC=1 trước khi chạy GitButler.
Thiết Lập Lần Đầu — 7 Bước
1. Mở repo của bạn
Mở GitButler → "Open Repository" → chọn thư mục git. GitButler tự detect và cấu hình.
2. Xác nhận Git identity
git config user.email "[email protected]"
3. Kết nối GitHub/GitLab (tuỳ chọn)
Settings ⚙️ → Integrations → "Connect GitHub" → hoàn tất OAuth. Token lưu trong OS keychain — an toàn tuyệt đối.
4. Tạo Virtual Branch đầu tiên
Click "New Branch" → đặt tên → bắt đầu code.
but branch create feature/my-feature
but branch switch feature/my-feature
5. Commit thay đổi
Thay đổi hiện trong panel bên trái. Click commit — hoặc để AI tự generate commit message từ diff.
6. Push và tạo PR
but pr open feature/my-feature
# PR form tự điền title + description
7. Explore Timeline
Mọi thao tác đều có thể undo qua Timeline panel. Lỡ xoá branch? Click undo.
5 Tình Huống Thực Tế
🤖
1. AI Agent Phát Triển Song Song
Dùng Claude/Cursor viết feature. Tạo mỗi feature một virtual branch — agent làm việc isolated, mỗi PR tự chứa đủ context. Lỡ AI commit sai? Timeline → Undo.
but branch create feature/auth
but branch create feature/email --upon feature/auth
but branch create feature/ui
# Mỗi branch = 1 PR, history sạch
🔧
2. Stacked Branches — Fix Bug Liên Quan
Production bug cần 3 commit phụ thuộc nhau. Mỗi commit thành một branch riêng, auto-rebase khi sửa root cause.
but branch create bugfix/tests --upon bugfix/root-cause
but branch create bugfix/docs --upon bugfix/tests
# Edit root-cause → tests + docs auto-restack
⚡
3. Chuyển Context Không Cần Stash
Đang code refactor dở, có bug khẩn. Trước: git stash → checkout → fix → stash pop (risk conflict). GitButler: tạo branch mới, fix, switch về — WIP vẫn nguyên.
↩️
4. Rollback Commit Cụ Thể Trong Stack
Merge feature 3 tuần trước, commit thứ 2 gây regression. Thay vì git revert tạo messy history — mở Timeline, tìm commit đó, click Undo.
🔀
5. Conflict Không Block CI
Hai feature cùng sửa một file. GitButler: cả hai được mark "conflicted state" nhưng CI vẫn chạy. Khi branch A merge, branch B auto-rebase và tự resolved.
🤖 GitButler + AI Agents: Combo Cực Mạnh
CLI but hỗ trợ non-interactive, deterministic operations — AI agent có thể gọi trực tiếp qua script.
AI Commit Messages
Phân tích diff, tự generate commit message theo convention của bạn.
PR Description Auto-fill
Tóm tắt thay đổi, suggest reviewers, link issues tự động.
Branch Name Suggestions
Gợi ý tên branch từ context của task đang làm.
Agent Hooks
Tích hợp Claude, OpenAI agents trực tiếp vào Git workflow.
So Sánh Nhanh Với Các Công Cụ Khác
| Tính năng | GitButler | GitKraken | SourceTree | GitHub Desktop |
|---|---|---|---|---|
| Giá | Miễn phí | $20/tháng | Miễn phí | Miễn phí |
| Virtual/Stacked Branches | ✅ Native | ❌ | ❌ | ❌ |
| AI Integration | ✅ Sâu | ❌ | ❌ | ❌ |
| Linux Support | ✅ Official | ✅ | ❌ | ❌ |
| Nguồn mở | ✅ MIT 2025 | Proprietary | Proprietary | ✅ |
🔗 Tài Nguyên
Bài viết được thực hiện bởi team Loc Nguyen Data — chuyên tư vấn và triển khai giải pháp AI/Data cho doanh nghiệp.