2010-03-05 21 views
6

Bối cảnh: Trevor đang làm việc trên một dự án thử nghiệm chỉ nhằm mục đích thử nghiệm git. Đây là một kho lưu trữ một người địa phương mà chưa được chia sẻ rất Trevor đã hard reset để tiêu diệt một số cam kết không mong muốn:Chi nhánh ẩn danh sau khi thực hiện đặt lại git

:git reset --hard 6aa32cfecf4 
    HEAD is now at 6aa32cf auto commit Sun Feb 28 16:00:10 -0800 2010 

Sau đó, Trevor đã đi cùng hạnh phúc thêm cam kết mới cho dự án. Sau đó, khi Trevor nhìn vào biểu diễn đồ họa của lịch sử cam kết, Trevor phát hiện ra rằng dường như là một nhánh ẩn danh của các cam kết xóa. Nó không hiển thị như một nhánh sử dụng git branch, nhưng nó hiển thị trong GUI.

Câu hỏi 1: Trevor có thể loại bỏ "nhánh ẩn danh" này như thế nào ... Trevor thực sự đang xem xét điều gì? Một số gợi ý để giúp Trevor hiểu được những gì đã xảy ra khi Trevor đã thiết lập lại khó khăn để Trevor có thể đặt ra kỳ vọng của Trevor tốt hơn.

Câu hỏi 2: Giả sử Trevor đã chia sẻ dự án với những người khác. Điều gì sẽ là thay thế để làm tương tự (hoặc điều tương tự) mà không làm một thiết lập lại cứng?

+1

Swip là gì? –

+0

@AndrewWillems Trevor – dreftymac

Trả lời

4

Như đã đề cập trong The illustrated guide to recovering lost commits with Git, bạn có thể khôi phục các cam kết "bị mất" (như trong "không còn được tham chiếu bởi chi nhánh hoặc thẻ").
Đó là lý do tại sao chúng vẫn hiển thị trong gitk.
Ví dụ: a:

$ git fsck −−lost-found 

cũng sẽ hiển thị chúng.

Để làm sạch này lên (giả sử bạn có để lấy lại từ bất kỳ hoạt động xóa khác)

$ git gc --aggressive 
$ git prune 

Xem thêm git gc: cleaning up after yourself.


Nếu chi nhánh đã được chia sẻ, một thay thế có thể sẽ là một git revert để thực hiện một cam kết mới hủy bỏ những n trước.

3

Bạn có thể tạo một số chi nhánh mới bằng cam kết.

Nếu cam kết cuối cùng của bạn trong chi nhánh ẩn danh của bạn là 123e43 bạn có thể làm:

git checkout -b my_branch 123e43e

Bây giờ chi nhánh của bạn là không nặc danh. Bạn có thể hợp nhất hoặc rebase nó trong chi nhánh của bạn

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