2010-04-30 24 views
5

Tôi đã quen với việc tạo, hợp nhất và xóa các chi nhánh. Tôi thích biết tôi đang ở đâu nên tôi không cam kết làm việc sai. Tôi sử dụng git branch -a để xem những chi nhánh nào tôi có. Tôi nghĩ rằng tiểu hành tinh * hiển thị nhánh nào tôi hiện đang sử dụng. có nghĩa là gì khi tôi nhận được: Tôi đang ở đâu? * (không có chi nhánh)

* (no branch) 
master 
origin/HEAD 

Bởi vì khi tôi $git checkout mybranch tôi mong đợi để xem

* mybranch 
master 
origin/HEAD 

+0

Bạn có vô tình xóa chi nhánh của mình không? –

+0

Kết quả của 'git branch -a' là gì? Nó có bao gồm 'điều khiển từ xa/nguồn gốc/mybranch'? –

Trả lời

1

Nó không giống như bạn có một chi nhánh gọi mybranch. Nếu bạn muốn tạo chi nhánh trỏ đến đầu hiện tại, hãy sử dụng git branch foo.

Nếu bạn muốn một trỏ đến ref khác, sử dụng git checkout -b newbranch <ref>

4

Các git trang thanh toán người đàn ông không đề cập đến, vì đối số tên chi nhánh:

<branch> 

Chi nhánh để kiểm tra;

  • nếu nó đề cập đến chi nhánh (ví dụ: tên, khi được thêm vào với "refs/heads/", là ref hợp lệ), thì chi nhánh đó được kiểm tra.
  • Nếu không, nếu nó đề cập đến một cam kết hợp lệ, HEAD của bạn trở thành "tách rời" và bạn không còn trên bất kỳ chi nhánh nào.

Vì vậy, thay vì sau khi kiểm tra ra một tên chi nhánh, bạn phải kiểm tra ra một tên thẻ (có giá trị cam kết), làm cho bạn HEAD a detached one.

+0

Bạn hoàn toàn đúng, tôi đã có một cái đầu tách rời. Đây là một tình huống không rõ đối với tôi mà tôi đã xem xét trong nghiên cứu của tôi về các chi nhánh. Tôi tìm thấy tất cả thông tin tôi cần để khắc phục. Cám ơn đã chỉ tôi hướng đi đúng! – Neofizz

Các vấn đề liên quan