0

[Series Làm Chủ Fork Git] Bài 1: Xin Chào Fork – Cài Đặt, Cấu Hình Và Làm Quen Giao Diện Cực Ngầu

Chào các bạn, là một Developer, chắc hẳn Git đã trở thành "vật bất ly thân" trong công việc hàng ngày của bạn. Chúng ta có Git CLI (Terminal) cho các thao tác nhanh, có Git tích hợp trong VS Code / WebStorm cho sự tiện lợi. Nhưng đã bao giờ bạn rơi vào cảnh:

  • Nhìn cái Git Graph trên Terminal rối như tơ vò?
  • Conflict một đống file và không biết dòng nào của mình, dòng nào của đồng nghiệp?
  • Muốn commit từng dòng code (Stage Lines) thay vì cả file nhưng tool hiện tại quá tù?

Đó là lý do Fork xuất hiện. Trong series này, mình sẽ cùng các bạn bóc tách từ A-Z mọi ngóc ngách của Fork – một Git GUI Client siêu nhanh, trực quan và cực kỳ mạnh mẽ.

1. Tại sao lại là Fork mà không phải Git Client khác?

Trước khi bắt đầu, điểm qua vài lý do vì sao Fork lại "đáng đồng tiền bát gạo" (dù nó có bản trả phí nhưng bản miễn phí vẫn đầy đủ tính năng và không giới hạn thời gian):

  • Hiệu năng vượt trội: Viết bằng ngôn ngữ native (Swift trên macOS, C# trên Windows) nên nó mượt và nhẹ hơn hẳn các tool chạy Electron như GitKraken.
  • Giao diện thông minh: Cách bố trí các tab, cây thư mục và Git Graph rất khoa học, dễ nhìn.
  • Tính năng nâng cao trực quan: Interactive Rebase, Merge Conflict giải quyết chỉ bằng vài cú click.

2. Tải và Cài Đặt

Việc cài đặt vô cùng đơn giản:

  1. Truy cập trang chủ: git-fork.com

  2. Tải về phiên bản phù hợp với hệ điều hành của bạn (Windows hoặc macOS).

  3. Tiến hành cài đặt theo các bước mặc định.

3. Cấu hình ban đầu (First-time Setup)

Ngay sau khi mở Fork lần đầu tiên, tool sẽ yêu cầu bạn cấu hình một số thông tin cơ bản. Hãy đảm bảo bạn điền chính xác để tránh việc commit sai tên hoặc email nhé.

  • User Name & Email: Đây là thông tin sẽ gắn liền với mọi commit của bạn (tương đương lệnh git config --global user.name).
  • Default Source Folder: Thư mục mặc định chứa các dự án của bạn để Fork dễ dàng quét và quản lý.
  • SSH Key: Nếu bạn dùng SSH để clone code từ GitHub/GitLab, Fork sẽ tự động nhận diện SSH key trong thư mục ~/.ssh/. Bạn có thể kiểm tra hoặc thêm mới tại đây.

4. "Giải Phẫu" Giao Diện Fork – Hiểu Rõ Từng Ngóc Ngách

Khi bạn mở một Repository (Dự án Git) bằng Fork, giao diện chính sẽ chia làm 4 khu vực lớn dưới đây. Hãy cùng mình "giải phẫu" từng vùng nhé:

Khu vực 1: Sidebar (Thanh điều hướng bên trái)

Đây là nơi quản lý cấu trúc của Repository.

  • Repository: Tên dự án hiện tại. Bạn có thể mở nhiều tab dự án như trên trình duyệt.
  • Local Branches: Danh sách các nhánh đang nằm ở máy cục bộ của bạn. Nhánh nào có hình mũi tên/check đậm là nhánh bạn đang đứng (Checkout).
  • Remote Branches: Danh sách các nhánh đang nằm trên Server (GitHub, GitLab...).
  • Stashes: Nơi lưu trữ tạm thời những đoạn code bạn đang viết dở mà chưa muốn commit.
  • Tags: Các mốc phiên bản (v1.0.0, v2.0.0...) của dự án.

Khu vực 2: Top Bar (Thanh công cụ phía trên)

Chứa các hành động Git kinh điển mà bạn dùng hàng ngày:

  • Fetch: Kiểm tra xem trên server có thay đổi gì mới không (nhưng chưa tải về code).
  • Pull: Tải code mới nhất từ server về và gộp vào nhánh hiện tại.
  • Push: Đẩy các commit mới từ máy bạn lên server.
  • Branch Dropdown: Nhanh chóng chuyển đổi qua lại giữa các nhánh.

Khu vực 3: Commit Graph (Khu vực trung tâm)

Đây chính là "linh hồn" của Fork. Nó hiển thị lịch sử của dự án dưới dạng một sơ đồ tàu điện ngầm (Graph).

  • Mỗi nút tròn là một Commit.
  • Các đường chỉ màu sắc thể hiện các nhánh khác nhau và cách chúng tách/gộp (Merge) vào nhau.
  • Nhìn vào đây, bạn biết ngay ai đã merge nhánh nào vào đâu, lúc mấy giờ, cực kỳ trực quan.

Khu vực 4: Changes / Commit Area (Góc dưới bên phải)

Nơi bạn chuẩn bị cho các commit của mình. Nó chia làm 2 tab chính:

  • Local Changes: Hiển thị những file bạn vừa chỉnh sửa nhưng chưa commit.
  • Unstaged: File thay đổi chưa được chọn để commit.
  • Staged: File đã sẵn sàng để commit.
  • Commit View: Nơi bạn nhập Commit Message và nhấn nút Commit.

5. Thử nghiệm tính năng "Stage Lines" – Vũ khí tối thượng của Fork

Để kết thúc bài học số 1, mình muốn giới thiệu một tính năng nhỏ nhưng cực kỳ tinh tế của Fork mà các tool khác làm rất cực: Stage từng dòng code.

Tình huống: Bạn sửa file UserController.php tổng cộng 10 dòng. Nhưng bạn chỉ muốn commit 3 dòng liên quan đến logic Sửa, còn 7 dòng liên quan đến logic Xóa bạn muốn để lại commit sau.

Cách làm với Fork:

  1. Click vào file UserController.php ở mục Local Changes.
  2. Nhìn sang khung hiển thị code bên cạnh, bôi đen 3 dòng bạn muốn commit.
  3. Chuột phải chọn Stage Selected Lines (hoặc bấm vào nút Stage xuất hiện ngay bên lề dòng code).
  4. Kết quả: Chỉ 3 dòng đó được đưa lên khu vực Staged sẵn sàng commit, 7 dòng còn lại vẫn nằm an toàn ở Unstaged. Thần kỳ chưa!

Tạm kết Bài 1

Vậy là chúng ta đã hoàn thành bài học đầu tiên! Bạn đã cài đặt thành công Fork, hiểu được cấu trúc giao diện và biết cách stage code theo từng dòng.

Ở Bài 2, chúng ta sẽ đi sâu vào quy trình làm việc hàng ngày (Daily Workflow) nâng cao: Cách xử lý Branch, Resolve Conflict (giải quyết xung đột) trực quan không đau đầu và làm chủ tính năng Stash.

Nếu thấy bài viết hữu ích, hãy nhấn Follow và Upvote để không bỏ lỡ các bài tiếp theo trong series nhé!

Câu hỏi cho các bạn: Bạn đang gặp khó khăn lớn nhất nào khi sử dụng Git CLI hoặc các Git Client hiện tại? Hãy comment bên dưới để mình giải đáp trong các bài học tới!


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí