Hiểu và giải quyết vấn đề về phần đầu tách rời của Git

Hieu Va Giai Quyet Van De Ve Phan Dau Tach Roi Cua Git



Trong Git Bash, HEAD là nhánh nơi nhà phát triển làm việc. Là người dùng Git Bash chuyên nghiệp, bạn có thể đã nghe nói về trạng thái HEAD tách rời. Một số người dùng thực sự thấy tình trạng này đáng báo động, nó chỉ có nghĩa là HEAD của bạn đang trỏ đến cam kết cụ thể thay vì nhánh.

Hướng dẫn này chứa nội dung hiểu biết sâu sắc về trạng thái HEAD tách rời thông thường và các giải pháp giải quyết HEAD tách rời bao gồm các nội dung sau:

Trạng thái HEAD bình thường trong Git là gì?

Trạng thái HEAD bình thường trong Git là nơi HEAD của bạn trỏ đến nhánh hiện tại. Khi người dùng chuyển đổi giữa các nhánh khác nhau, HEAD cũng được chuyển sang nhánh đó. Kiểm tra các bước sau đây để trình diễn thực tế.







Bước 1: Hiển thị trạng thái nhật ký
Mở Git Bash và hiển thị nhật ký của dự án bằng cách sử dụng “nhật ký git” yêu cầu:



nhật ký git



Hiện tại, HEAD của chúng tôi đang trỏ đến “ bậc thầy ' chi nhánh.





Bước 2: Chuyển nhánh
Bây giờ, chuyển sang nhánh cục bộ khác và sau đó kiểm tra vị trí con trỏ HEAD. Ví dụ: chúng tôi đang kiểm tra “ tính năng ' chi nhánh:

kiểm tra git tính năng



Chi nhánh đã được chuyển thành “ tính năng ”.

Bước 3: Kiểm tra nhật ký
Xem lại trạng thái nhật ký của kho lưu trữ và kiểm tra trạng thái HEAD để xác minh:

nhật ký git

Theo kết quả đầu ra sau đây, HEAD của chúng tôi hiện đang trỏ đến nhánh “tính năng”:

Vì vậy, đây là kịch bản HEAD bình thường trong Git Bash.

Nhà nước tách rời có nghĩa là gì?

Như chúng tôi đã đề cập ở trên, trạng thái HEAD tách rời xảy ra khi HEAD trỏ đến cam kết thay vì nhánh. Khi bạn chuyển sang cam kết mới nhất, HEAD của bạn sẽ trỏ đến cam kết và đây là trạng thái HEAD tách rời. Để hiểu rõ hơn, hãy xem qua hướng dẫn thực hành.

Bước 1: Kiểm tra trạng thái đầu
Đầu tiên, hiển thị nhật ký để xem trạng thái HEAD bằng cách chạy lệnh này trong Git Bash:

nhật ký git --trực tuyến

Hiện tại, HEAD đang trỏ đến “ tính năng ' chi nhánh.

Bước 2: Kiểm tra cam kết
Hãy chuyển HEAD sang cam kết mới nhất bằng cách sử dụng lệnh sau cùng với hàm băm SHA:

kiểm tra git b8d840c

Bạn sẽ thấy trạng thái HEAD tách rời xuất hiện khi chuyển sang cam kết thay vì nhánh.

Bước 3: Kiểm tra lại trạng thái đầu
Bây giờ, nếu bạn hiển thị nhật ký để kiểm tra trạng thái HEAD, bạn sẽ thấy nó đang trỏ đến cam kết:

nhật ký git --trực tuyến

Đây là trạng thái HEAD tách rời của Git.

Những tình huống nào tạo ra các trạng thái HEAD tách rời?

Có hai tình huống có thể thấy trạng thái HEAD tách rời, hãy xem bảng bên dưới:

Tình huống 1 Khi người dùng chuyển sang cam kết băm SHA thay vì nhánh.
Tình huống 2 Khi người dùng chuyển sang nhánh từ xa trước khi tìm nạp nó.

Làm cách nào để giải quyết các vấn đề về HEAD tách rời Git?

Bây giờ, hãy xem cách bạn có thể giải quyết vấn đề tách rời HEAD. Việc giải quyết khá đơn giản, chỉ cần tạo một nhánh mới, chuyển sang nhánh đó và thực hiện các thay đổi. Để xem nó thực tế, hãy kiểm tra các hướng dẫn đã cho.

Bước 1: Tạo một chi nhánh mới
Đầu tiên, tạo nhánh mới thông qua “nhánh git” yêu cầu:

nhánh git mới

Bước 2: Chuyển sang nhánh đã tạo
Sau đó, chuyển sang nó thông qua “chuyển đổi git” lệnh và gõ tên chi nhánh:

git chuyển đổi mới

Bước 3: Cam kết thay đổi
Cam kết các thay đổi được áp dụng và chỉ định thông báo bằng cách sử dụng “ tôi ' nhãn:

cam kết git -m 'chuyển nhánh'

Bước 4: Kiểm tra nhật ký
Bây giờ, hãy kiểm tra trạng thái của HEAD bằng cách hiển thị nhật ký:

nhật ký git

Đây là cách bạn có thể giải quyết trạng thái HEAD tách rời.

Phần kết luận

Trạng thái HEAD tách rời Git xuất hiện khi HEAD trỏ đến cam kết thay vì nhánh. Để giải quyết nó, chỉ cần tạo một nhánh mới, chuyển sang nhánh đó và thực hiện các thay đổi. Bạn đã tìm hiểu chi tiết về các vấn đề tách rời HEAD trong Git.