গিটের একটি প্রকল্পে সমস্ত বিকাশকারীকে তালিকাবদ্ধ করুন


205

গিটে কোনও প্রকল্পে (অবদানকারী ব্যবহারকারী) যে সকল ব্যবহারকারী অবদান রেখেছেন তাদের তালিকাভুক্ত করা কি সম্ভব?

কোন অতিরিক্ত পরিসংখ্যান?

উত্তর:


386

সমস্ত ব্যবহারকারী এবং ইমেলগুলি দেখাতে এবং CURRENT শাখায় কমিটের সংখ্যা:

git shortlog --summary --numbered --email

বা সহজভাবে:

git shortlog -sne

সমস্ত শাখার ব্যবহারকারীদের (কেবলমাত্র বর্তমান শাখায় নয়) ব্যবহারকারীদের দেখানোর জন্য আপনাকে --allপতাকা যুক্ত করতে হবে:

git shortlog -sne --all

3
মনে রাখবেন যে আপনি যদি এই কমান্ডটি কোনও স্ক্রিপ্টের মধ্যে থেকে বা "পিঁপড়ে" এর মতো কিছু ব্যবহার করতে চান, আপনাকে অবশ্যই একটি সংশোধন উল্লেখ করতে হবে বা এটি কিছুই আউটপুট করে না। বর্তমান সংশোধনের জন্য আপনি হেড ব্যবহার করতে পারেন:git shortlog -sn HEAD
মাজেঙ্কো

59
ই-মেইল ঠিকানাগুলি পেতে, যুক্ত করুন -e
mic_e

10
সমস্ত শাখার ব্যবহারকারীদের (কেবলমাত্র বর্তমান শাখায় নয়) ব্যবহারকারীদের দেখানোর জন্য আপনাকে --allপতাকা যুক্ত করতে হবে
জিয়ান মার্কো ঘেরার্ডি

3
আমি যদি কমিটের সংখ্যাটি না চাই?
ওয়েরিব্যান্ডস

1
পুরো প্রকল্পের চেয়ে কে নির্দিষ্ট ফাইলটিকে স্পর্শ করেছে তা যাচাই করার জন্য এটিও দুর্দান্ত। git shortlog --summary --numbered <pathToFile>
jxramos

40

আপনি যদি তালিকায় আরও নির্দিষ্ট হতে চান (অনন্য প্রতিশ্রুতিবদ্ধ এবং লেখকের একটি তালিকা খুঁজে পান), আপনি ব্যবহার করতে পারেন git log:

git log --pretty="%an %ae%n%cn %ce" | sort | uniq
  • %an লেখকের নাম
  • %ae লেখক ইমেল
  • %n নতুন লাইন
  • %cn প্রতিশ্রুতিবদ্ধ নাম
  • %ce প্রতিশ্রুতিবদ্ধ ইমেল

অন্যান্য স্থানধারকদের সুন্দর প্রিন্ট ডকুমেন্টেশনেgit log বর্ণনা করা হয়েছে ।


আমি মনে করি %n(লাইন-ভিত্তিক) এর সাথে সংমিশ্রণটি খুব বেশি বোঝায় না sort, তাই না? লাইনটি পৃথক লাইনে লেখক / প্রতিশ্রুতিবদ্ধ নাম / ইমেল লগ করে তবে পুরো আউটপুটকে
তোলে

@ এসএসসি প্রতিশ্রুতিবদ্ধ ইমেল লেখকের ইমেল থেকে আলাদা হতে পারে। এই পার্থক্যগুলি খুঁজতে% n নতুন লাইনের জন্য রয়েছে
গিলিয়াম ভিনসেন্ট

19

আপনি এটি চেষ্টা করতে পারেন:

git log | grep Author: | sort | uniq

1
তাদের। মেইলম্যাপ ফাইলটি আপডেট করতে আগ্রহী যে কারও পক্ষে এটি সবচেয়ে দরকারী কমান্ড!
আহি টুনা

7

(ব্যবহারকারীগণ কমিট করেছেন)

দ্রষ্টব্য: ডিফল্ট git shortlogগোষ্ঠী দ্বারা লেখক দ্বারা কমিট করে ।

যদি আপনার প্রতিশ্রুতিবদ্ধদের দ্বারা তাদের গোষ্ঠীভুক্ত করতে হয় তবে আপনার গিট 2.12 (Q1 2017) প্রয়োজন হবে

git shortlog -snc

দেখুন কমিট 03f4082 দ্বারা (16 ডিসেম্বর 2016) জেফ কিং ( peff)
দেখুন কমিট fbfda15 (11 অক্টোবর 2016) দ্বারা লিনাস টোরভাল্ডস ( torvalds)
(দ্বারা একীভূত junio সি Hamano - gitster- মধ্যে ad1b4e2 কমিট , 27 ডিসেম্বর 2016)

লিনাস টরভাল্ডস নিজেই এই বৈশিষ্ট্যটি প্রবর্তন করেছেন:

shortlog: প্রতিশ্রুতিবদ্ধ তথ্য দ্বারা গ্রুপ

কিছু পরিস্থিতিতে আপনি কমিটগুলি লেখক দ্বারা নয়, পরিবর্তে প্রতিশ্রুতিবদ্ধদের দ্বারা গোষ্ঠী করতে চাইতে পারেন।

উদাহরণস্বরূপ, যখন আমি কেবল linux-nextবর্তমান মার্জ উইন্ডোতে আমি কী হারিয়েছি তা সন্ধান করতে চাইলে , আমি কোন প্যাচ লিখেছি সে সম্পর্কে এতটা চিন্তা করে না, git treeএটি কী থেকে এসেছে, যা সাধারণত "কে প্রতিশ্রুতিবদ্ধ করে" এটি "।

সুতরাং গিট শর্টলগকে এতে গ্রুপিং স্যুইচ করার জন্য " -c" বা " --committer" বিকল্পটি গ্রহণ করুন।



1

আমি এখনও এটি পরীক্ষা করে দেখার মতো হয়ে ওঠিনি, তবে গিট সংগ্রহস্থলের জন্য প্রকল্পের পরিসংখ্যানগুলির জন্য এটি সত্যিই দুর্দান্ত দেখাচ্ছে: https://github.com/visionmedia/git-extras

পরীক্ষা করে দেখুন binক্যাটালগ বিভিন্ন স্ক্রিপ্ট দেখতে।

উদাহরণস্বরূপ, git-countস্ক্রিপ্ট (প্রতি প্রতি দায়বদ্ধ প্রতিশ্রুতি):

git shortlog -n $@ | grep "):" | sed 's|:||'

1
গিট শর্টলগ -ns কম হ্যাকিশ বলে মনে হচ্ছে
টমডিএলটি

আমি টমডিএলটি 4 বছর আগে পোস্ট করার পরে, গিটার-এক্সট্রাগুলিতে এই উদাহরণ স্ক্রিপ্টটি পরিবর্তিত হয়েছে। তবে আমি মনে করি গিট-এক্সট্রা জাতীয় প্রকল্পগুলি বা লোকের ডটফিলের কাছ থেকে গিট স্ক্রিপ্টগুলি দেখার জন্য আমার পরামর্শটি এখনও দুর্দান্ত পরামর্শ। আপনি যদি আকর্ষণীয় গিট কমান্ডগুলি সন্ধান করছেন তবে আমি গ্যারি বার্নহার্টের ডটফিলগুলিও
ড্যানিয়েল লি

1

@ পেড্রো-ন্যাসিমেণ্টোর দুর্দান্ত উত্তর, @ মাইমি_ই এবং অন্যরা ইতিমধ্যে সমস্যার সমাধান করেছে।

এছাড়াও, আপনি নীচের লাইনটি আপনার যুক্ত করতে পারেন .gitconfig

contributors = shortlog -e --summary --numbered

বা শেল টাইপ

git config --global alias.contributors 'shortlog -e --summary --numbered'

এবং এর পরে আপনি কেবল প্রার্থনা করতে পারেন: git contributors


1
আপনার সম্ভবত একটি নোট যুক্ত করা উচিত যে এটি সেট করার পরে আপনি কেবল কল করতে পারেনgit contributors
লোহফু

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.