Magit এ একটি ফাইলের ইতিহাস দেখুন?


88

গিট সংস্করণ ব্যবহার করে কোনও ফাইলের পরিবর্তনের ইতিহাস দেখুন মধ্যে কোনও ফাইলের ইতিহাস দেখার অন্যান্য উপায় সম্পর্কে কথা বলা হয়।

এটি ইমাস ম্যাজিটে করা যায়?


দেখে মনে হচ্ছে এই উত্তরটি আপনি যা খুঁজছেন তারই
আইবিজামান

উত্তর:


116

যেহেতু ম্যাজিট ২.১: magit-log-buffer-file(নীচের মতামত অনুসারে)

ম্যাজিট 2.1 এর আগে: magit-file-logআপনি যা খুঁজছেন তা is এটি আপনাকে স্ট্যান্ডার্ড ম্যাজিট লগ ভিউতে বর্তমান বাফারে ফাইলটির জন্য সমস্ত প্রতিশ্রুতি প্রদর্শন করবে।


9
যেহেতু ম্যাজিট ২.১, এর magit-file-logনতুন নামকরণ করা হয়েছিলmagit-log-buffer-file
আন্তন আই সিপোস

9
দুর্ভাগ্যক্রমে, magit-log-buffer-fileপ্রতিটি প্রতিশ্রুতি প্রদর্শন কেবলমাত্র সেই ফাইলটিতে সীমাবদ্ধ করে না।
রবিন সবুজ

4
@ কেটালিনহিটকু এটি সেই ফাইলটি প্রভাবিত করে এমন সমস্ত প্রতিশ্রুতি প্রদর্শন করতে ভাল কাজ করে তবে এটি প্রতিটি প্রতিশ্রুতি প্রদর্শন কেবলমাত্র সেই ফাইলটিতে সীমাবদ্ধ করে না।
উইলকিস্টাইল

4
এখন পর্যন্ত সর্বাধিক সুবিধাজনক উপায়টি হ'ল আপনার পছন্দ অনুসারে কমিট করা magit-log-buffer-fileএবং তারপরে magit-ediff-dwim(স্পেসম্যাকসে "ই" শর্টকাট আবদ্ধ) চালানো। এটি হাইলাইট করা পরিবর্তনগুলির সাথে দুটি পেনের সাথে একটি উইন্ডো প্রদর্শন করবে।
জুরজ মার্টিনকা

4
অস্পষ্ট কি @ রবিন-সবুজ এবং @wilkystyle বর্ণনা করা হয়, কিন্তু সম্ভবত কীস্ট্রোকগুলি l, -uএবং lপরে সাহায্য করবেmagit-log-buffer-file
dickmao

33

magit-statusটাইপ করে আপনার বাফারটি খুলুন M-x magit-status(আমি C-. C-gএটিতে আবদ্ধ থাকতাম কারণ এটি সর্বদা ব্যবহৃত হয় These আজকাল, আমি স্পেসম্যাকস ব্যবহার করি তাই এটি <SPC> g s)

  1. প্রকার lলগ দেখার বিকল্পটি পেতে
  2. --"ফাইলগুলির সীমাবদ্ধতা" বিকল্প সেট করতে টাইপ করুন (আগে ব্যবহৃত হত =f)
  3. আপনি যে ফাইলের জন্য ইতিহাস দেখতে চান তা প্রবেশ করুন
  4. lবর্তমান শাখার লগ দেখতে টাইপ করুন

আপনি যদি স্পেসম্যাকস ব্যবহার করে থাকেন তবে আপনি বর্তমানে ব্যবহার করে বর্তমানে পরিদর্শন করা ফাইলটির ইতিহাস পেতে পারেন <SPC> g f h


4
আমি মনে করি দ্বিতীয় পদক্ষেপটি এখন --( Magit 20200112.2023, Git 2.20.1, Emacs 26.1, gnu/linux)
লিয়াম

4
ভাল, কিছু সময়ে মুছে ফেলা ফাইলগুলির সাথেও কাজ করে।
গন্টার জ্যাচবাউর


3

আমি কোন উপায় জানি না। আমি সহজভাবে ব্যবহার করি M-x vc-print-logযা একই কৃতিত্ব অর্জন করতে পারে বলে মনে হয়। যদিও এটি কোনও চৌম্বক-সমন্বিত উপায় নয়।


2

যদি ম্যাজিট ( ব্যবহারকারীর ম্যানুয়াল ) এর বৈশিষ্ট্যটি না থাকে তবে আপনি অন্যান্য ইমাস মোডে একবার দেখতে পারেন এবং নিজের git-log-fileফাংশনটি যুক্ত করতে পারেন :

(defun git-log-file ()
  "Display a log of changes to the marked file(s)."
  (interactive)
  (let* ((files (git-marked-files))
         (buffer (apply #'git-run-command-buffer "*git-log*" "git-rev-list" \
"--pretty" "HEAD" "--" (git-get-filenames files))))  (with-current-buffer buffer
      ; (git-log-mode)  FIXME: implement log mode
      (goto-char (point-min))
      (setq buffer-read-only t))
    (display-buffer buffer)))

বা কেবল ব্যবহার করুনC-x v l
ফিল্ডগুলি

: আমি নিম্নলিখিত বার্তা হচ্ছেSymbol’s function definition is void: git-marked-files
Alper

4
@ আল্প 7 বছর পরে, ওএস, গ্রহন এবং যাদু প্লাগইনের সঠিক সংস্করণ সহ, এই ইস্যুটি তার নিজের প্রশ্নে আরও ভালভাবে উপস্থাপিত হবে।
ভোনসি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.