Hướng dẫn sử dụng Git chuyên nghiệp: Từ cơ bản đến nâng cao

Hướng dẫn sử dụng Git chuyên nghiệp: Từ cơ bản đến nâng cao

Hệ thống quản lý phiên bản như Git đóng vai trò quan trọng trong quy trình phát triển phần mềm hiện đại, giúp lập trình viên theo dõi lịch sử thay đổi mã nguồn, khôi phục phiên bản trước đó và phát triển các nhánh mới một cách linh hoạt. Nhờ đó, nhóm phát triển có thể làm việc hiệu quả hơn, đảm bảo tính toàn vẹn của dự án.

Hiện nay, Git được sử dụng rộng rãi để quản lý mã nguồn, với các nền tảng như GitHub, GitLab và Bitbucket cung cấp giải pháp lưu trữ và cộng tác mạnh mẽ. Các kho lưu trữ Git không chỉ giúp bạn tổ chức mã nguồn mà còn tạo điều kiện để nhóm làm việc cùng nhau một cách mượt mà.

Sau khi cài đặt Git, việc làm quen với các lệnh cơ bản sẽ giúp bạn nhanh chóng kiểm soát và quản lý kho lưu trữ của mình. Trong hướng dẫn này, bạn sẽ tìm hiểu cách tạo kho Git mới, thực hiện các thao tác quản lý mã nguồn và đẩy (push) dữ liệu lên kho lưu trữ từ dòng lệnh, giúp bạn từng bước nắm vững quy trình làm việc với Git.

Yêu cầu tiên quyết

Công cụ quản lý phiên bản Git đã được cài đặt trong môi trường phát triển của bạn. Nếu bạn đang làm việc trên Ubuntu, hãy tham khảo bài hướng dẫn “Cài đặt Git trên Ubuntu 20.04”.

Bước 1 – Tạo Workspace

Nếu bạn đang chuyển đổi một dự án hiện có sang kho Git, bạn có thể bỏ qua bước này và chuyển sang bước 2.
Nếu không, hãy bắt đầu bằng cách tạo một thư mục làm việc mới:

mkdir testing

Tiếp theo, di chuyển vào thư mục làm việc đó:

cd testing

Bên trong thư mục đó, bạn cần tạo một tập tin mẫu để minh họa chức năng của Git. Bạn có thể tạo một tập tin rỗng bằng lệnh:

touch file

Sau khi đã đưa toàn bộ các tập tin dự án vào workspace, bạn cần bắt đầu theo dõi các tập tin đó bằng Git. Bước tiếp theo sẽ giải thích quá trình này.

Hướng dẫn sử dụng Git chuyên nghiệp: Từ cơ bản đến nâng cao

Bước 2 – Chuyển đổi dự án hiện có thành môi trường Workspace

Bạn có thể khởi tạo một kho Git trong thư mục hiện có bằng lệnh:

git init
Output
Initialized empty Git repository in /home/sammy/testing/.git/

Tiếp theo, bạn cần sử dụng lệnh git add để cho phép Git theo dõi các tập tin hiện có. Phần lớn, Git sẽ không theo dõi các tập tin mới tự động, vì vậy lệnh git add là cần thiết khi bạn thêm nội dung mới vào kho mà trước đó Git chưa theo dõi.

git add .

Bây giờ, bạn đã có một kho Git được theo dõi chủ động. Từ đây về sau, mỗi bước trong bài hướng dẫn này sẽ phù hợp với quy trình làm việc thông thường khi cập nhật và commit vào kho Git hiện có.

Bước 3 – Tạo Commit Message

Mỗi lần bạn commit các thay đổi vào kho Git, bạn sẽ cần cung cấp một commit message. Commit message tóm tắt các thay đổi mà bạn đã thực hiện. Commit message không thể để trống và có thể có độ dài tùy ý – một số người thích sử dụng commit message dài, chi tiết, mặc dù một số nền tảng như GitHub lại ưu tiên những commit message ngắn gọn dễ đọc hơn.

Nếu bạn đang nhập một dự án hiện có vào Git lần đầu tiên, thông thường bạn chỉ sử dụng thông điệp “Initial Commit”. Bạn có thể tạo commit bằng lệnh:

git commit -m "Initial Commit" -a
Output
[master (root-commit) 1b830f8] initial commit
 0 files changed
 create mode 100644 file

Trong lệnh trên có hai tham số quan trọng. Tham số -m cho biết commit message (trong trường hợp này là “Initial Commit”) sẽ theo sau. Tham số -a cho biết commit của bạn sẽ bao gồm tất cả các tập tin đã được thêm hoặc sửa đổi. Git không coi đây là hành vi mặc định, nhưng về sau, bạn có thể đặt mặc định việc bao gồm tất cả các tập tin đã cập nhật trong commit của mình.

Nếu bạn chỉ muốn commit một tập tin hoặc một vài tập tin, bạn có thể sử dụng:

git commit -m "Initial Commit" file1 file2

Trong bước tiếp theo, bạn sẽ đẩy commit này lên kho từ xa.

Bước 4 – Đẩy các thay đổi lên máy chủ từ xa

Cho đến thời điểm này, bạn đã làm việc hoàn toàn trong môi trường cục bộ của mình. Thật vậy, bạn vẫn có thể sử dụng Git theo cách này để theo dõi và hoàn tác các thay đổi của riêng bạn. Tuy nhiên, để tận dụng các tính năng hợp tác phổ biến trên các nền tảng như GitHub, bạn sẽ cần đẩy các thay đổi lên máy chủ từ xa.

Bước đầu tiên để có thể đẩy mã lên máy chủ từ xa là cung cấp URL nơi kho lưu trữ tồn tại và đặt cho nó một tên cục bộ. Để cấu hình một kho từ xa và xem danh sách các remote (bạn có thể có nhiều remote), hãy sử dụng lệnh:

git remote add origin ssh://git@git.domain.tld/repository.git 
git remote -v
Output
origin	ssh://git@git.domain.tld/repository.git (fetch)
origin	ssh://git@git.domain.tld/repository.git (push)

Lệnh đầu tiên thêm một remote có tên “origin” và đặt URL là ssh://git@git.domain.tld/repository.git.

Bạn có thể đặt tên remote tùy ý, nhưng “origin” là quy ước phổ biến cho bản sao upstream chính thức của mã nguồn. URL cần trỏ đến một kho từ xa thực sự. Ví dụ, nếu bạn muốn đẩy mã lên GitHub, bạn sẽ cần sử dụng URL kho được cung cấp bởi GitHub.

Sau khi cấu hình remote, bạn có thể đẩy mã lên máy chủ từ xa bằng lệnh:

git push origin main

Lưu ý: Trước năm 2021, nhánh đầu tiên được tạo trong kho Git mặc định có tên là master. Gần đây, có nỗ lực chuyển đổi tên nhánh mặc định thành main nhằm sử dụng thuật ngữ trung tính hơn. Mặc dù nhiều nhà cung cấp dịch vụ lưu trữ Git như GitHub đã thay đổi, nhưng phiên bản Git cục bộ của bạn có thể vẫn mặc định là master. Nếu bạn nhận được thông báo lỗi về nhánh main không tồn tại, hãy thử đẩy nhánh master thay thế.

Output
Counting objects: 4, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 266 bytes, done.
Total 3 (delta 1), reused 1 (delta 0)
To ssh://git@git.domain.tld/repository.git
   0e78fdf..e6a8ddc  main -> main

Trong tương lai, khi bạn có nhiều commit cần đẩy, bạn có thể chỉ cần gõ git push và Git sẽ tự động sử dụng tên nhánh và remote từ lần đẩy cuối cùng.

Kết Luận

Bạn đã thành công trong việc thiết lập một kho Git, commit các thay đổi và đẩy mã nguồn lên một kho lưu trữ từ xa như GitHub. Đây là bước đầu quan trọng để quản lý phiên bản mã nguồn một cách hiệu quả, giúp theo dõi thay đổi và phối hợp làm việc dễ dàng hơn.

Dù các nền tảng như GitHub cung cấp giao diện trực quan để quản lý mã nguồn, việc sử dụng Git qua dòng lệnh vẫn là kỹ năng thiết yếu, đặc biệt đối với các dự án phức tạp và làm việc nhóm. Khi bạn tiếp tục phát triển dự án hoặc tham gia vào các kho mã có nhiều contributor, bạn sẽ cần tìm hiểu thêm về các lệnh Git nâng cao như quản lý nhánh, xử lý merge conflicts và tạo pull request. Với nền tảng đã có, bạn đã sẵn sàng mở rộng kiến thức và áp dụng Git vào quy trình phát triển phần mềm chuyên nghiệp.

Tiếp theo, bạn có thể tìm hiểu thêm về cách sử dụng các nhánh Git, hoặc cách tạo pull request trên GitHub. Bạn cũng có thể tham khảo tài liệu tham khảo của Git.

 

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *