วิธีปิดการใช้งานเพจเจอร์ git แต่สำหรับบางคำสั่งเท่านั้น?


14

ฉันชอบที่เปิดใช้งานเพจเจอร์git logแต่ไม่ใช่git diffเพราะฉันมีเครื่องมือดิฟแบบดิจิตัลที่เกิดขึ้นและฉันเกลียดที่จะต้องกด 'q' ที่บรรทัดคำสั่งหลังจากทำ diff มีวิธีทำเช่นนี้หรือไม่?


เป็นไปได้เช่นเดียวกันกับ SO: stackoverflow.com/questions/2183900/ …
Ciro Santilli 冠状病毒审查审查六四事件法轮功

คำตอบ:


23

คุณสามารถตั้งpager.diffค่าตัวแปรการกำหนดค่าเพื่อปิดใช้งานเพจเจอร์สำหรับคำสั่งย่อยเฉพาะ ดูpager.<cmd>ในGit-config (1)

git config --global pager.diff false

ออก--globalหากคุณต้องการเปลี่ยนแปลงการกำหนดค่านี้สำหรับที่เก็บปัจจุบันเท่านั้น


3
git -c pager.diff=false log ...การปิดใช้งานสำหรับการภาวนาโดยเฉพาะอย่างยิ่ง
mjs

0

ไม่ใช่โซลูชันที่ยอดเยี่ยม แต่คุณสามารถใช้ wrapper git ซึ่งกำหนดว่าคำสั่งใดที่คุณกำลังใช้งานและไพพ์เอาต์พุตผ่าน cat เพื่อกำจัดการตรวจจับเทอร์มินัล

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

แน่นอนโปรแกรมตัวอย่างของฉันคือความคิดทั้งหมด คุณจะต้องข้ามตัวเลือกแทนการเข้ารหัสแบบยาก "$ 1" ในโปรแกรม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.