স্টিডআউটে গিট ডিফার লিখন কীভাবে করবেন?


93

ডিফল্টরূপে স্ট্যান্ডআউটে git diffসমস্ত +-লাইন প্রিন্ট করে তবে আমার কাছে একটি (ডিভিয়ান) মেশিন রয়েছে (যা আমি এসএসএসের মাধ্যমে সংযুক্ত করি) যেখানে git diffআমাকে সম্পাদকের দিকে নিয়ে যায় (যা আমি জানি না কোনটি) এবং qচালিয়ে যাওয়ার জন্য আমাকে টিপতে হবে।

আমি চেকার গিট কনফিগার করেছি এবং দেখে মনে হচ্ছে:

$ git config --list
user.name=XXX
user.email=XXX@XXX
color.ui=false
difftool.prompt=false
mergetool.prompt=false
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
remote.origin.url=XXX
branch.master.remote=origin
branch.master.merge=refs/heads/master
$ git config --global --list
user.name=XXX
user.email=XXX@XXX
color.ui=false
difftool.prompt=false
mergetool.prompt=false
$ git config --system --list
'/etc/gitconfig': No such file or directory

আমি অনুপস্থিত কোন জায়গা আছে? হতে পারে অজানা সরঞ্জামটি একটি ফ্যালব্যাক বা কিছু কারণ আমি আমার মেশিনে কিছু হারিয়েছি? কোন সাহায্য প্রশংসা করা হয়। ধন্যবাদ


উত্তর:


167

ডিফল্টরূপে, গীত পাঠায় তার পরিবর্তন আউটপুট (এবং সাধারণত কোনো আউটপুট করে একটি screenful চেয়ে বেশি হতে পারে) সিস্টেমের জন্য পেজার , যা একটি ইউটিলিটি যে কপি করে প্রিন্ট শুধুমাত্র এক একটি সময়ে আউটপুট screenful। কমান্ড চালানোর সময় আপনি যদি পেজারটি অক্ষম করতে চান তবে গিতে পাস --no-pagerকরুন:

$ git --no-pager <subcommand> <options>

এটি কোনও গিট কমান্ডের জন্য চালানো যেতে পারে।

আপনি যদি কেবল ডিফের জন্য এটি ডিফল্টরূপে অক্ষম করতে চান তবে আপনি catচালিয়ে গিয়ে ডিফ পেজার সেট করতে পারেন :

$ git config pager.diff false

আপনি যদি সমস্ত কমান্ডের জন্য এটি ডিফল্টরূপে অক্ষম করতে চান তবে আপনি catচালিয়ে গিট পেজার সেট করতে পারেন :

$ git config --global core.pager cat

পেজার সম্পর্কে জানতেন না। git config --global core.pager catকরেছি!. আপনাকে ধন্যবাদ :)
nacho4d

4
@aaronbauman: আপনি এটি পাস করেছেন git( না subcommand)?
মিপাদি

আমি দেখতে পাচ্ছি, "গিট - নো-পেজার ডিফ" "গিট ডিফ - নো-পেজার" এর চেয়ে আলাদা। স্পষ্টতার জন্য আপনাকে ধন্যবাদ
অ্যারোনবাউম্যান

4
একই জিনিস এর জন্য কাজ করে git branch, যেমনgit config pager.branch false
দিনজাস

30

নিম্নলিখিত core.pagerমানটি ব্যবহার করে less, যা প্রসারিত করে এবং পেজার কার্যকারিতাও রয়েছে (প্রয়োজনে), স্ক্রোলিং উপরে এবং নীচে সক্ষম (বিপরীতে cat):

$ git config --global core.pager "less -FRSX"

এটি যদি তত্ক্ষণাত প্রথম স্ক্রিনে ফিট করে ( -F), কাঁচা নিয়ন্ত্রণের অক্ষরগুলি আউটপুট করে ( -R), ( -S) মোড়ানোর পরিবর্তে লম্বা রেখাগুলি ছড়িয়ে দেয় এবং টার্মক্যাপ ইনপ / ডিনিট স্ট্রিং ( -X) ব্যবহার করে না ।


4
আপনাকে ধন্যবাদ .. আমি পুরো ইন্টারনেট জুড়ে এই বিকল্পটি
খুঁজছিলাম

এইটি আমি চাই
ব্যবহারকারী 3595632

20

আপনি যদি রঙগুলির বিষয়ে চিন্তা না করেন তবে আপনি catকোনও gitকমান্ডের জন্যও সহজেই ব্যবহার করতে পারেন।

সুতরাং git diff | catআপনার ক্ষেত্রে।

সম্পাদনা করুন: আপনি যদি রঙগুলি ব্যবহারের বিষয়ে যত্ন নেন তবে মন্তব্যে নির্দেশিত হিসাবে:

git diff --color | cat


9
এবং যদি আপনি রঙগুলির বিষয়ে যত্নশীল হন, git diff --color | cat(:
xjcl 11:37
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.