Computer >> Máy Tính >  >> Lập trình >> Lập trình

Chi nhánh Git

Phân nhánh là một tính năng trong hầu hết các hệ thống điều khiển phiên bản hiện đại. Các nhánh cho phép các nhà phát triển rời khỏi phiên bản chính của mã của họ và thực hiện các thay đổi đối với mã của họ mà không cần cập nhật phiên bản chính của mã.

Trong các hệ thống kiểm soát phiên bản khác, việc phân nhánh có thể là một quá trình khó khăn. Một số hệ thống kiểm soát phiên bản yêu cầu bạn tạo một bản sao mã mới, điều này có thể tốn nhiều công sức cho các dự án lớn hơn. Mặt khác, Git có tính năng phân nhánh đơn giản cho phép bạn dễ dàng điều hướng giữa các nhánh khác nhau.

Hướng dẫn này sẽ thảo luận, với các ví dụ, khái niệm cơ bản về phân nhánh trong Git và cách bạn có thể sử dụng lệnh git branch. Khi đọc xong hướng dẫn này, bạn sẽ trở thành chuyên gia phân nhánh trong Git.

Các nhánh Git

Các nhánh là một phần thiết yếu khi làm việc với Git.

Trong các dự án chuyên nghiệp, các nhánh thường được sử dụng cho mọi tính năng hoặc bản sửa lỗi đang được thực hiện. Điều này là do phân nhánh cho phép nhà phát triển làm việc trên kho lưu trữ mà không ảnh hưởng đến cơ sở mã chính, vì vậy nhà phát triển có thể làm việc trên một tính năng hoặc sửa lỗi với những người khác trước khi nó được đẩy đến bản sao chính của mã dự án.

Cách tiếp cận này để phát triển phần mềm làm giảm khả năng mã có lỗi được hợp nhất vào phiên bản chính của cơ sở mã.

Trong Git, một nhánh là một dòng mới bên trong một kho lưu trữ. Dòng mới này sẽ bao gồm phiên bản mã của codebase riêng và sẽ phát triển độc lập với nhánh chính. Trong hầu hết các cơ sở mã, nhánh này được gọi là “nhánh chính”.

Bởi vì các nhánh độc lập với nhánh chính, chúng có thể được sử dụng để làm việc trên các tính năng khác nhau trong một cơ sở mã song song. Sau đó, khi một thay đổi sẵn sàng trở thành một phần của cơ sở mã chính, thay đổi đó có thể được hợp nhất vào nhánh chính hoặc phiên bản chính của mã.

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia một cuộc thi đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình đã dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

Lệnh nhánh Git

Các nhánh do người dùng tạo độc lập với nhánh chính. Các nhánh này có lịch sử cam kết riêng và khi bạn đẩy các thay đổi vào nhánh, những thay đổi đó sẽ chỉ xuất hiện trên nhánh mà chúng đã được đẩy.

Hãy nghĩ về các nhánh như một cách để tạo nhiều phiên bản của cùng một cơ sở mã. Bạn có thể có một nhánh bao gồm mã cho tính năng mới mà bạn đang làm việc và một nhánh khác lưu trữ phiên bản cập nhật của repo giải quyết vấn đề đang mở.

Lệnh git branch được sử dụng để làm việc với các branch trong Git. Lệnh cho phép bạn tạo, đổi tên và xóa các nhánh. Bạn cũng có thể truy xuất danh sách các nhánh bằng cách sử dụng git branch.

Ngoài ra, nhánh git thường được sử dụng ngoài các lệnh git checkout và git merge, được sử dụng để chuyển đổi giữa các phiên bản của một cơ sở mã và để hợp nhất các phiên bản khác nhau của một cơ sở mã, tương ứng. Chúng tôi thảo luận về các chủ đề này trong các hướng dẫn của riêng họ.

Bây giờ chúng ta đã biết những điều cơ bản về phân nhánh trong Git, chúng ta có thể khám phá cách sử dụng lệnh git branch với các cờ và tham số được hỗ trợ của nó.

Truy xuất danh sách các chi nhánh

Để truy xuất danh sách các nhánh trong kho lưu trữ Git, bạn có thể sử dụng lệnh git branch. Đây là cú pháp cho lệnh git branch:

git branch

Dưới đây là ví dụ đầu ra từ lệnh này:

* master
* v0.9
* v0.8

Như bạn có thể thấy, lệnh git branch trả về danh sách các nhánh trong kho lưu trữ Git của chúng tôi. Một cách khác để viết lệnh này là sử dụng git branch –list, nó cũng trả về danh sách các nhánh trong kho lưu trữ Git.

Tạo chi nhánh

Giả sử chúng ta muốn tạo một nhánh có tên “v0.9.1” trong cơ sở mã của chúng ta. Chúng tôi có thể làm như vậy bằng cách sử dụng mã này:

git branch v0.9.1

Lệnh này tạo một nhánh mới với tên v0.9.1. Khi lệnh này được chạy, môi trường phát triển của bạn sẽ vẫn được gắn với HEAD của repo. Vì vậy, nếu bạn muốn xem chi nhánh mới của mình, bạn sẽ cần sử dụng lệnh git checkout.

Khi một nhánh mới được tạo, kho lưu trữ không bị thay đổi theo bất kỳ cách nào khác ngoài thực tế là một nhánh mới tồn tại. Lịch sử của kho lưu trữ sẽ được giữ nguyên. Điều này là do khi bạn tạo một nhánh, Git chỉ tạo một con trỏ đến nhánh mới.

nếu bạn muốn bắt đầu cam kết mã cho chi nhánh của mình, bạn sẽ cần sử dụng lệnh git checkout, git add và git commit.

Xóa chi nhánh

Để xóa một nhánh trong kho lưu trữ Git, bạn có thể sử dụng cờ -d.

Giả sử chúng tôi đã quyết định rằng chúng tôi muốn xóa nhánh v0.9.1 khỏi mã của chúng tôi. Đây là lệnh chúng tôi sẽ sử dụng để xóa nhánh:

git branch -d v0.9.1

Lệnh này sẽ xóa chi nhánh của chúng tôi. Tuy nhiên, cờ -d thực hiện thao tác xóa an toàn, có nghĩa là nếu có các thay đổi chưa được hợp nhất (các thay đổi trên nhánh chưa được hợp nhất vào nhánh khác), thì nhánh đó sẽ không bị xóa. Điều này đảm bảo rằng bạn không vô tình mất quyền truy cập vào chi nhánh có mã mà bạn muốn hợp nhất.

Nếu bạn muốn buộc một nhánh phải xóa, ngay cả khi nó có các thay đổi chưa được hợp nhất đang chờ xử lý, bạn có thể sử dụng cờ -D. Thao tác này sẽ xóa vĩnh viễn một chi nhánh. Đây là cú pháp cho cờ -D:

git branch -D v0.9.1

Sau khi chạy lệnh này, chi nhánh của chúng ta đã bị xóa. Cờ -D chỉ nên được sử dụng trong trường hợp bạn hoàn toàn chắc chắn rằng bạn muốn xóa một nhánh. Điều này là do cờ -D không hiển thị cảnh báo khi nó được thực thi.

Khi bạn đã thực hiện lệnh git branch -d / -D, bản sao cục bộ của branch sẽ bị xóa. Tuy nhiên, nhánh có thể vẫn tồn tại trong bản sao chính của repo, nếu repo của bạn được lưu trữ từ xa.

Nếu bạn muốn xóa bản sao từ xa của nhánh, bạn sẽ cần chạy một lệnh khác. Giả sử chúng ta muốn thông báo với kho lưu trữ từ xa của mình rằng nhánh v0.9.1 nên bị xóa. Chúng tôi có thể làm như vậy bằng cách sử dụng lệnh này:

git push origin :v0.9.1

Lệnh trên sẽ hướng dẫn kho lưu trữ từ xa của chúng tôi xóa nhánh v0.9.1.

Đổi tên Chi nhánh

Bạn có thể đổi tên một nhánh Git bằng cách sử dụng cờ -m.

Cờ -m đổi tên chi nhánh bạn đang xem. Giả sử chúng ta muốn đổi tên nhánh v0.9.2 (mà chúng ta hiện đang xem) thành v1. Chúng tôi có thể làm như vậy bằng cách sử dụng mã này:

git branch -m v1

Lệnh này đổi tên nhánh mà chúng ta đang xem thành v1.



Kết luận

Lệnh git branch được sử dụng để tạo, đổi tên và xóa các nhánh. Lệnh này cũng có thể được sử dụng để truy xuất danh sách các nhánh được liên kết với git repo.

Tuy nhiên, nếu bạn muốn cam kết mã cho một nhánh, bạn sẽ cần sử dụng các lệnh như git checkout, git add và git commit, được sử dụng để lưu các thay đổi đối với cơ sở mã.

Hướng dẫn này đã thảo luận, với các ví dụ, khái niệm cơ bản về phân nhánh trong Git và cách sử dụng lệnh git branch. Giờ đây, bạn đã được trang bị kiến ​​thức cần thiết để bắt đầu phân nhánh mã trong Git như một nhà phát triển chuyên nghiệp!