Làm thế nào để vô hiệu hóa máy nhắn tin git nhưng chỉ cho một số lệnh nhất định?


14

Tôi thích bật máy nhắn tin git logchẳng hạn, nhưng không phải git diffvì tôi có công cụ tìm hình ảnh riêng của mình xuất hiện và tôi ghét phải nhấn 'q' tại dòng lệnh sau khi hoàn thành việc tìm khác biệt. Có cách nào để làm việc này không?


Câu trả lời:


23

Bạn có thể đặt pager.diffbiến cấu hình để tắt máy nhắn tin cho các tiểu ban cụ thể. Xem pager.<cmd>trong git-config (1) .

git config --global pager.diff false

Bỏ qua --globalnếu bạn chỉ muốn thay đổi cấu hình này cho kho lưu trữ hiện tại.


3
Để vô hiệu hóa cho một lời mời cụ thể : git -c pager.diff=false log ....
mjs

0

Không phải là một giải pháp tuyệt vời, nhưng bạn có thể có một trình bao bọc git xác định lệnh nào bạn đang chạy và chuyển đầu ra qua con mèo để loại bỏ phát hiện đầu cuối.

#!/bin/sh
case "$1" in)
  diff) git "$@" | cat;;
  *) exec git "$@";;
esac

Tất nhiên chương trình ví dụ của tôi là hoàn toàn bản lĩnh. Bạn sẽ cần bỏ qua các tùy chọn thay vì mã hóa "$ 1" trong chương trình.

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.