Cách chỉ xem các tệp chưa được trộn trong git sau khi không hợp nhất


32

Trong khi hợp nhất một số tệp không hợp nhất.

git status

cho thấy cả sự hợp nhất thành công và thất bại.

Làm thế nào để chỉ xem các tệp hợp nhất không thành công (xung đột).

Hiện tại tôi đang sử dụng lệnh sau để làm điều này

 find . -name '*.cpp' -o -name '*.h' | xargs grep -l '<<<<'

Câu trả lời:


37
git diff

Điều này sẽ chỉ hiển thị hợp nhất không thành công sau khi hợp nhất không thành công. Nó có nhiều tùy chọn để cấu hình những thông tin bạn muốn xem. Tôi nghi ngờ đây là lựa chọn chính xác mà bạn đang theo đuổi:

 git diff --name-status --diff-filter=U

Đồng thời xem http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#resolve-a-mergehttp://www.kernel.org/pub/software/scm/ git / docs / git-diff.html


9
Nếu bạn muốn có một danh sách sạch các tệp mà không có chữ U trước, thì bạn có thể gọi git diff --name-only --diff-filter=U. Bằng cách này, bạn có thể dẫn đầu ra, ví dụ như git diff --name-only --diff-filter=U | xargs subl.
JHannes


7
git --no-pager diff --name-only --diff-filter=U

Nhưng vì mục tiêu rất có thể là chỉnh sửa các tệp đó, nên những điều sau đây sẽ hoàn hảo:

vim $(git diff --name-only --diff-filter=U)

Cảm ơn @JHannes từ bình luận của câu trả lời khác

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.