5 phút đọc

Fork vs Clone

Fork vs Clone

forkclone đều tạo bản sao repo, nhưng bản sao nằm ở đâuai thực hiện thì khác hẳn.

Clone

Clonelệnh Git tạo bản sao repo về máy local của bạn, kèm full lịch sử và một remote origin tự động.

git clone https://github.com/user/repo.git

Fork

Forkthao tác của nền tảng (GitHub/GitLab) tạo bản sao repo trên tài khoản của bạn ở server. Bạn có quyền đẩy vào fork đó, dù không có quyền đẩy vào repo gốc.

Quy trình đóng góp điển hình: fork trên server → clone fork về máy → làm việc → push lên fork → mở Pull Request về repo gốc.

So sánh

Tiêu chíCloneFork
Bản sao nằm ởMáy localTài khoản bạn trên server
Ai thực hiệnGit (lệnh)Nền tảng (web)
Quyền ghiVào bản localVào fork trên server
Mục đích chínhLàm việc trên máyĐóng góp khi không có quyền push gốc

Cách nhớ nhanh

clone = photocopy mang về bàn mình (bản local). fork = đặt một bản sao có tên bạn lên kệ thư viện chung (bản server). Đóng góp open-source: fork lên kệ trước, rồi clone về bàn làm.