Cơ bản về Git

Frontend SELF VI
Mức độ , Bài học
Có sẵn

9.0 Một chút lịch sử

Từ khi được tạo ra, công cụ Git DVCS có một nhánh mặc định có tên là master. Mỗi kho Git đều có nhánh master, trừ khi nhà phát triển thực hiện các bước rõ ràng để xoá nó, điều này hiếm khi làm vì nhánh master đóng vai trò quan trọng trong thế giới phát triển phần mềm.

Việc sử dụng các thuật ngữ masterslave (chủ và nô lệ) trong ngành công nghiệp máy tính đã thu hút sự chú ý vào mùa hè năm 2020 trong bối cảnh các cuộc biểu tình và bất ổn xã hội gia tăng. Trong cuộc thảo luận công khai, một số lựa chọn thay thế cho master đã xuất hiện, bao gồm defaultprimary. Tuy nhiên, thuật ngữ phổ biến nhất đã trở thành main.

GitHub đã thực hiện hành động và từ chối thuật ngữ master khi khởi tạo kho Git. Chuyển đổi GitHub từ master sang main có thể thực hiện trong cài đặt tài khoản Repositories hoặc bằng lệnh:

$ git branch -m master main

Trong các bài giảng sau, thuật ngữ master vẫn được sử dụng. Chi tiết về chuyển đổi có thể tìm hiểu qua các liên kết sau:

9.1 Git là gì và vì sao nó cần thiết

Git là một hệ thống quản lý phiên bản mạnh mẽ, được sử dụng để theo dõi các thay đổi trong mã nguồn trong quá trình phát triển phần mềm. Nó cho phép lập trình viên lưu trữ các phiên bản khác nhau của tệp và điều phối công việc của nhiều người trong một dự án chung.

Các khái niệm cơ bản về Git:

Kho lưu trữ

Kho lưu trữ (hoặc "repo") là nơi lưu trữ toàn bộ lịch sử dự án, bao gồm tất cả các thay đổi và phiên bản tệp. Trong Git, kho lưu trữ bao gồm thư mục làm việc, chỉ mục (hoặc giai đoạn) và cơ sở dữ liệu đối tượng.

Commits

Commit là trạng thái được lưu trữ của dự án. Mỗi commit trong Git chứa thông tin về những thay đổi đã được thực hiện trong dự án, bởi ai và khi nào. Commits hình thành lịch sử dự án và cho phép quay lại bất kỳ phiên bản nào trước đó.

Nhánh

Nhánh (branch) là một dòng phát triển độc lập. Mặc định, Git tạo ra nhánh main (trước kia là master). Bạn có thể tạo nhánh mới để phát triển tính năng hoặc sửa lỗi và sau đó hợp nhất chúng lại vào nhánh chính.

Hợp nhất và rebase

Hợp nhất (merge) và rebase là hai cách để tích hợp thay đổi từ một nhánh vào nhánh khác. Hợp nhất kết hợp lịch sử của hai nhánh, tạo ra một commit mới, còn rebase chuyển các commit của một nhánh lên đỉnh của nhánh khác, thay đổi lịch sử commit.

9.2 Các lệnh Git cơ bản

Dưới đây là bảng với các lệnh Git cơ bản để quản lý phiên bản:

Lệnh Mô tả
git init Khởi tạo kho Git mới trong thư mục hiện tại.
git clone Nhân bản kho từ URL vào thư mục mới.
git add Thêm tệp vào chỉ mục cho commit tiếp theo.
git commit Lưu lại các thay đổi đã chuẩn bị trong kho lưu trữ.
git push Gửi các thay đổi từ kho địa phương lên kho từ xa.
git pull Cập nhật nhánh hiện tại với phiên bản mới nhất từ kho từ xa.
git branch Hiển thị, tạo hoặc xóa nhánh.
git merge Hợp nhất thay đổi của một nhánh vào nhánh hiện tại.
git rebase Chuyển thay đổi lên cơ sở mới (thường là một nhánh khác).

Các lệnh này đại diện cho các công cụ cơ bản trong Git, cho phép quản lý các thay đổi mã, nhánh và hợp nhất trong các dự án mọi kích thước. Chúng ta sẽ đi sâu hơn vào chúng trong các bài giảng tiếp theo.

9.3 Ba nơi lưu trữ mã

Khi bạn sử dụng hệ thống kiểm soát phiên bản cho mã của mình, mã của bạn, nói chung, sẽ được lưu trữ ở ba nơi:

1. Kho lưu trữ từ xa:

Đây là nơi tập trung lưu trữ mã của bạn, thường được lưu trữ trên các dịch vụ như GitHub, GitLab, hoặc Bitbucket. Chúng đảm bảo lưu trữ mã tập trung và là cơ sở cho sự hợp tác.

Các kho lưu trữ từ xa cho phép các nhà phát triển chia sẻ thay đổi của mình, đồng bộ nỗ lực và theo dõi lịch sử thay đổi của dự án. Ngoài ra, kho lưu trữ từ xa còn là điểm tích hợp cho quá trình tự động hóa, như xây dựng, kiểm tra và triển khai ứng dụng.

2. Kho lưu trữ địa phương:

Kho lưu trữ địa phương là bản sao mã cá nhân của bạn, được lưu trên máy tính của bạn. Trong kho này, bạn có thể thực hiện tất cả các thao tác với Git (commits, nhánh, hợp nhất) mà không cần kết nối internet.

Các kho lưu trữ địa phương cho phép lập trình viên làm việc cách biệt với đồng nghiệp, thử nghiệm, tạo tính năng mới hoặc sửa lỗi trước khi thay đổi được hợp nhất (merge) và gửi lên kho lưu trữ từ xa.

3. Thư mục làm việc:

Thư mục làm việc trên máy tính của bạn chứa các tệp dự án hiện tại mà bạn đang làm việc. Đây là nơi bạn có thể thấy và thay đổi các tệp, thêm chức năng mới hoặc sửa lỗi.

Sau khi thực hiện thay đổi, bạn có thể thêm chúng vào chỉ mục (staging area), và sau đó lưu lại trong kho địa phương. Thư mục làm việc liên kết với nhánh hiện tại trong kho của bạn, và thay đổi nhánh sẽ thay đổi nội dung của thư mục làm việc.

Các thành phần này cùng nhau cung cấp cơ sở hạ tầng mạnh mẽ để quản lý mã nguồn, cho phép lập trình viên quản lý lịch sử dự án, hợp tác và chia sẻ trách nhiệm cho mã.

9.4 GitHub — kho lưu trữ miễn phí phổ biến nhất

GitHub là nền tảng web lớn nhất để lưu trữ mã nguồn, sử dụng hệ thống kiểm soát phiên bản Git. Được thành lập vào năm 2008, nó nhanh chóng trở thành một trong những công cụ chính cho những lập trình viên trên toàn thế giới.

GitHub

GitHub cho phép người dùng tạo kho lưu trữ để quản lý dự án, kiểm soát và theo dõi các thay đổi trong mã, hợp tác với các lập trình viên khác và phát triển trong chế độ công khai hoặc riêng tư. Nó cung cấp các tính năng như fork, nhánh, pull request và hợp nhất, giúp lập trình viên dễ dàng hợp tác với nhau.

GitHub cũng bao gồm chức năng theo dõi vấn đề, yêu cầu tính năng, quản lý nhiệm vụ và wiki cho từng dự án. Nền tảng tích hợp với nhiều công cụ và dịch vụ, cung cấp nhiều khả năng cho tự động hóa phát triển, kiểm tra và triển khai ứng dụng.

GitHub hỗ trợ một cộng đồng nhà phát triển rộng lớn, nơi các thực tiễn tốt nhất về lập trình, quản lý dự án và nhiều hơn nữa được thảo luận sôi nổi. Điều này không chỉ khiến nó trở thành công cụ quản lý dự án mà còn là trung tâm cộng đồng, nơi lập trình viên có thể trao đổi kiến thức và kinh nghiệm.

9.5 Đăng ký GitHub

GitHub

Bước 1. Truy cập https://github.com

Bước 2. Đăng ký...

Bước 3. Nhấn vào nút "New" để tạo kho lưu trữ mới.

Bước 4. Đặt tên kho lưu trữ và cấu hình các tham số của nó.

Bước 5. Thêm vào dự án tệp README - nó sẽ cần thiết trong tương lai.

Bước 6. Nhấn "Create repository".

Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION