Cảnh báo: Chạy git prune
mà không có tùy chọn -n
(1) sẽ xóa dữ liệu không thể truy cập của bạn.
Có thể có cách, sử dụng git prune
và git cat-file
.
Chạy git prune -n
danh sách di chúc mà các đối tượng sẽ được loại bỏ bằng cách tỉa:
$ git prune -n
9cc84ea9b4d95453215d0c26489d6a78694e0bc6 blob
c315143703752ef4d11ca7d93f2c324872b2ebff blob
Mỗi dòng tương ứng với một tập tin đã xóa.
Bây giờ, sử dụng git cat-file
, chúng tôi có thể khôi phục lại nội dung của tập tin gỡ bỏ vào một tập tin mới:
git cat-file -p 9cc84ea9b4d95453215d0c26489d6a78694e0bc6 > restored-filename.whatever
(1) Từ git prune
tài liệu:
TÊN
git-prune - Cắt giảm tất cả các đối tượng không thể truy cập từ cơ sở dữ liệu đối tượng
OPTIONS
-n
- chạy thử
Không xóa bất kỳ thứ gì; chỉ cần báo cáo những gì nó sẽ loại bỏ.
Nguồn
2017-11-14 11:30:09
Cũng giống như unix - '-f' có nghĩa là bạn nên chắc chắn về những gì bạn đang làm. –