Câu hỏi Xem những gì trong một stash mà không áp dụng nó [trùng lặp]


Có thể trùng lặp:
Có thể xem trước nội dung stash trong git không? 

tôi hiểu rồi đây bạn có thể áp dụng / không áp dụng một stash và thậm chí tạo ra một nhánh mới của một stash. Có thể chỉ đơn giản là nhìn thấy những gì bên trong stash mà không thực sự áp dụng nó?


1183
2018-05-23 18:26


gốc


Anh ấy không gọi stash một ứng dụng, anh ta đề cập đến hành động áp dụng stash. Thuật ngữ không rõ ràng sang một bên, câu hỏi là như nhau. - ellotheth
Để có được đầu ra diff được tô màu: git stash show -p stash@{1} >~/.diff && vim ~/.diff (không phải là vim. bất kỳ trình soạn thảo văn bản nào miễn là trình soạn thảo văn bản của bạn có hỗ trợ đánh dấu cú pháp cho diff đầu ra). - Trevor Boyd Smith
@TrevorBoydSmith hoặc chỉ git stash show -p stash@{1} | view - - Aryeh Leib Taurog
một chút quan sát kỳ lạ, trên centos-7 view được đặt bí danh thành vi và man view hiển thị trang người đàn ông cho vim. (tôi sẽ phải thay đổi .bashrc để sử dụng mẹo mới của bạn (nó tốt hơn IMO cũ của tôi).) - Trevor Boyd Smith


Các câu trả lời:


Từ man git-stash trang:

Các sửa đổi được loại bỏ bởi lệnh này có thể được liệt kê với danh sách stit git,          kiểm tra với chương trình stit git stash

show [<stash>]
       Show the changes recorded in the stash as a diff between the stashed state and
       its original parent. When no <stash> is given, shows the latest one. By default,
       the command shows the diffstat, but it will accept any format known to git diff
       (e.g., git stash show -p stash@{1} to view the second most recent stash in patch
       form).

Vì vậy, để xem nội dung của stash gần đây nhất, hãy chạy

git stash show -p

Để xem nội dung của một stash tùy ý, hãy chạy một cái gì đó như

git stash show -p stash@{1}

1670
2018-05-23 18:58



Nếu chỉ có một stash bạn chỉ có thể làm git stash show -p. - Zubin
Một trong những tính năng rất hữu ích có thể xem xét là danh sách nội dung của tất cả các stashes địa phương: git stash list | awk -F: ‘{ print “\n\n\n\n”; print $0; print “\n\n”; system(“git –no-pager stash show -p ” $1); }’ | less  Nó đã giúp tôi rất nhiều trong quá khứ (làm sạch stashes stack). - Dariusz Cieslak
Lệnh tương tự với dấu ngoặc kép cố định và không có đường ống đến ít hơn, do đó bạn vẫn có thể thấy nổi bật khác: git stash list | awk -F: '{ print "\n\n\n\n"; print $0; print "\n\n"; system("git stash show -p " $1); }' Nhấn [Q] để thoát từng stash. - Gerry
git stash show -p stash@{1} liệt kê tất cả các tệp trong một stash. Có thể xem một tập tin cụ thể từ stash không? - Varun Natraaj
git stash show -p stash@{0} --name-only chỉ hiển thị tên của các tệp (không phải là nội dung) trong stash đầu tiên của bạn. - bergie3000