كم عدد الأشخاص الذين شاركوا في المشروع؟ بناء على نظام التحكم مراجعة
سؤال
وكيف يمكنك أن تعرف كم عدد المطورين شاركوا في مشروع باستخدام نظام التحكم مراجعة؟ العثور على صديق لي بهذه الطريقة للبحث عن الجواب في سجل بوابة:
git log | grep Author: | sort -u | cut –delimiter=” ” -f2 | sort -u | wc -l
هل هناك طريقة واضحة في بوابة؟ ماذا عن نظام التحكم الأخرى مراجعة مثل التخريب، بازار أو زئبقي؟
المحلول
بوابة
shortlog
الأمر مفيدا جدا . هذا يلخص الناتج git-log
نموذجي.
$ git shortlog -sn
119 tsaleh
113 Joe Ferris
70 Ryan McGeary
45 Tammer Saleh
45 Dan Croak
19 Matt Jankowski
...
وتمرير لwc
لرؤية عدد من أسماء فريدة من نوعها:
$ git shortlog -sn | wc -l
40
نصائح أخرى
لزئبقي، هناك امتدادا لذلك تماما: hg churn
وأنواع hg churn
التي، إذا كنت تريد changeset العد،-غيرت خط استخدام hg churn -c
.
لتخريب
svn log -q svn://path/to/repo | cut -f 3 -d " " | sort -u
وهناك المساعد احصاءات عن بازار للحصول على معلومات مختلفة عن المساهمين المشروع:
وأنا لست على علم بطريقة واضحة للزئبقي إما ولم بحث جيد للجميع وثائقه لم تكشف أي شيء أيضا. لذلك، وهنا أمر * لا شىء، مماثلة لتلك التي وجدت صديقك، لزئبقي:
hg log | grep user: | cut -c 14- | sort -u | uniq | wc -l
وراجع للشغل، وأنا أعتقد أن هناك خطأ مع الأمر للبوابة، يجب بالتأكيد أن يتم استبدال sort -u
الثانية من UNIQ!
وهناك نسخة بوابة بساطة هو:
git log --pretty=tformat:%an | sort -u | wc -l
وأو إذا كنت تهتم عناوين البريد الإلكتروني فريدة من نوعها:
git log --pretty=tformat:%ae | sort -u | wc -l
وزئبقي لديه لغة قالب قوية المدمج في (انظر hg help templates
). حتى تتمكن من الحصول على قائمة بجميع الأشخاص في المشروع دون تمكين تمديد زبد:
hg log --template '{author}\n' | sort -u
وإذا كان الناس قد تغيرت عناوين بريدهم الإلكتروني (ولكن أبقى على خلاف ذلك اسمهم نفس)، ثم يمكنك معالجة الكلمة قالب author
قليلا:
hg log --template '{author|person}\n' | sort -u
ثم يضاف wc -l
بما يتناسب مع الأوامر أعلاه.