Gource(1) General Commands Manual Gource(1)

gource - بصری‌ساز نرم‌افزاری کنترل نسخه مبتنی بر OpenGL

gource [گزینه‌ها] [مسیر]

gource یک ابزار بصری‌سازی سه‌بعدی مبتنی بر OpenGL برای مخازن کنترل نسخه سورس‌کد است.

مخزن به صورت یک درخت نمایش داده می‌شود که در آن ریشه مخزن در مرکز قرار دارد، دایرکتوری‌ها شاخه‌ها و فایل‌ها برگ‌ها هستند. مشارکت‌کنندگان در سورس‌کد با ایجاد تغییر در فایل‌ها و دایرکتوری‌های خاص، ظاهر و ناپدید می‌شوند.

gource برای اجرا به یک کارت گرافیک با پشتیبانی از OpenGL نیاز دارد.

راهنما (برای راهنمای جامع‌تر از -H استفاده کنید).
تنظیم اندازه درگاه دید (viewport). اگر گزینه -f نیز مشخص شده باشد، تلاش می‌کند حالت ویدیویی را نیز بر همین اساس تنظیم کند. افزودن ! پنجره را غیرقابل تغییر اندازه می‌کند.
حالت تمام‌صفحه.
تنظیم شماره صفحه‌نمایش جهت نمایش برنامه.
درخواست صفحه‌نمایش با تراکم پیکسلی بالا (High DPI) هنگام ساخت پنجره.

در برخی پلتفرم‌ها مانند MacOS، وضوح تصویر پنجره به جای پیکسل با واحد پوینت (Point) مشخص می‌شود. گزینه --high-dpi ممکن است برای دسترسی به برخی وضوح‌های بالاتر مورد نیاز باشد.

برای مثال، درخواست یک پنجره 800x600 با تراکم بالا ممکن است پنجره‌ای با ابعاد 1600x1200 پیکسل ایجاد کند.

موقعیت اولیه پنجره روی دسکتاپ (در محیط‌های چند مانیتوره).

این گزینه تنظیم screen را بازنویسی می‌کند، بنابراین هر دو را هم‌زمان مشخص نکنید.

پنجره بدون قاب و حاشیه.
شفاف کردن پس‌زمینه (عمدتاً برای اسکرین‌شات‌ها کاربرد دارد).
شروع از نخستین مدخل پس از تاریخ و زمان مشخص‌شده اختیاری.

اگر اختلاف منطقه زمانی مشخص نشود، از منطقه زمانی محلی استفاده می‌شود.

نمونه قالب‌های قابل قبول:

"2012-06-30"
"2012-06-30 12:00"
"2012-06-30 12:00:00 +12"
توقف در آخرین مدخل پیش از تاریخ و زمان مشخص‌شده اختیاری.

از قالبی مشابه --start-date استفاده می‌کند.

شروع از یک موقعیت خاص در گزارش لاگ (عددی بین 0.0 تا 1.0 یا مقدار 'random').
توقف (خروج) در یک موقعیت خاص در گزارش لاگ (با STDIN کار نمی‌کند).
توقف (خروج) پس از تعداد ثانیه‌های مشخص‌شده.
توقف (خروج) در انتهای گزارش لاگ یا جریان ورودی.
تکرار و بازگشت به ابتدای گزارش لاگ پس از رسیدن به پایان آن.
میزان تأخیر به ثانیه پیش از شروع مجدد چرخه.
پرش خودکار به مدخل بعدی در صورت عدم وقوع هیچ رویدادی برای تعداد ثانیه‌های مشخص‌شده.
سرعت شبیه‌سازی بر حسب ثانیه به ازای هر روز.
سرعت پخش بلادرنگ و واقعی.
در صورتی که زمان یک کامیت در گذشته باشد، از زمان آخرین کامیت استفاده شود.
استفاده از برچسب زمانی پدیدآورنده (Author) به جای برچسب زمانی ثبت‌کننده (Committer).
تغییر مقیاس زمانی شبیه‌سازی. این گزینه بر سرعت حرکت آواتار کاربران تأثیر می‌گذارد.

برای نمونه 0.5 برای نصف سرعت و 2 برای دو برابر سرعت.

مدت‌زمان به ثانیه که فایل‌ها پیش از حذف در حالت غیرفعال باقی می‌مانند، یا 0 برای نامحدود.
مدت‌زمان به ثانیه که فایل‌ها در انتهای شبیه‌سازی پیش از حذف در حالت غیرفعال باقی می‌مانند.
میزان کشسانی و انعطاف‌پذیری گره‌ها.
رنگ پس‌زمینه در قالب هگزادسیمال.
تنظیم یک تصویر پس‌زمینه.
تنظیم عنوان نمایش.
مشخص کردن فایل فونت. با اکثر قالب‌های فونت پشتیبانی‌شده توسط FreeType مانند TTF و OTF کار می‌کند.
تغییر مقیاس اندازه تمام قلم‌ها.
اندازه فونت استفاده‌شده برای تاریخ و عنوان.
اندازه فونت نام فایل‌ها.
اندازه فونت نام دایرکتوری‌ها.
اندازه فونت نام کاربران.
رنگ فونت تاریخ و عنوان در قالب هگزادسیمال.
نمایش راهنمای پسوند فایل‌ها.
لوگو جهت نمایش در پیش‌زمینه.
موقعیت آفست و جابه‌جایی لوگو.
مشخص کردن قالب نمایش تاریخ (با قالب strftime).
نمایش دستور لاگ استفاده‌شده توسط gource برای سیستم‌های کنترل نسخه (git، svn، hg، bzr، cvs2cl).
مشخص کردن قالب گزارش لاگ ورودی (git، svn، hg، bzr، cvs2cl، custom). هنگام خواندن از STDIN الزامی است.
دریافت لاگ گیت مربوط به شاخه‌ای غیر از شاخه جاری.
دنبال کردن خودکار یک کاربر خاص توسط دوربین.
برجسته کردن نام تمامی دایرکتوری‌ها.
برجسته کردن نام یک کاربر خاص.
برجسته کردن نام تمامی کاربران.
رنگ فونت کاربران برجسته‌شده در قالب هگزادسیمال.
رنگ فونت کاربران و فایل‌های انتخاب‌شده.
رنگ فونت نام فایل‌ها.
رنگ فونت دایرکتوری‌ها.
رسم نام دایرکتوری‌ها تا عمق مشخصی از ساختار درخت.
موقعیت قرارگیری نام دایرکتوری در امتداد لبه (عددی بین 0.1 تا 1.0، مقدار پیش‌فرض 0.5 است).
مدت‌زمان نمایش نام فایل‌ها روی صفحه (بزرگ‌تر یا مساوی 2.0).
تنها نمایش پسوند فایل‌ها.
استفاده از نام فایل به عنوان پسوند در صورت خالی یا ناموجود بودن پسوند.
فیلتر کردن و نادیده گرفتن مسیر فایل‌های منطبق بر عبارت باقاعده مشخص‌شده.
نمایش انحصاری مسیر فایل‌های منطبق بر عبارت باقاعده مشخص‌شده.
فیلتر کردن و نادیده گرفتن نام کاربران منطبق بر عبارت باقاعده مشخص‌شده.
نمایش انحصاری نام کاربران منطبق بر عبارت باقاعده مشخص‌شده.
دایرکتوری حاوی تصاویر کاربران با قالب jpg. یا png. (مانند "Full Name.png") جهت استفاده به عنوان آواتار.
مسیر تصویر با فرمت jpg. برای استفاده به عنوان تصویر پیش‌فرض کاربر.
ثابت نگه‌داشتن اندازه تصویر کاربر در تمام طول شبیه‌سازی.
رنگی کردن تصاویر کاربران.
برش نمای دید در امتداد یک محور (vertical یا horizontal).
فاصله حاشیه (padding) نمای دوربین.
فعال‌سازی نمونه‌برداری چندگانه (Multi-sampling).
غیرفعال‌سازی همگام‌سازی عمودی (V-Sync).
تنظیم میزان افکت درخشش (Bloom).
تنظیم شدت افکت درخشش (Bloom).
تنظیم حداکثر تعداد فایل‌ها یا مقدار 0 برای نامحدود. فایل‌های مازاد دور ریخته خواهند شد.
حداکثر زمان مجاز برای ظاهر شدن فایل‌های یک کامیت. برای حالت نامحدود از مقدار -1 استفاده کنید.
حداکثر سرعت جابه‌جایی کاربران بر حسب واحد در ثانیه.
مدت‌زمان مورد نیاز برای متوقف شدن کامل کاربران.
تغییر مقیاس آواتار کاربران.
حالت دوربین (overview یا track).
غیرفعال کردن چرخش خودکار دوربین.
غیرفعال کردن ورودی‌های صفحه‌کلید و ماوس.
مخفی کردن یک یا چند مورد از عناصر نمایشی فهرست زیر:
bloom     - افکت درخشش
date      - تاریخ جاری
dirnames  - نام دایرکتوری‌ها
files     - آیکون‌های فایل‌ها
filenames - نام فایل‌ها
mouse     - نشانگر ماوس
progress  - نوار پیشرفت
root      - دایرکتوری ریشه درخت
tree      - ساختار درختی متحرک
users     - آواتار کاربران
usernames - نام کاربران
عناصر چندگانه را با کاما جدا کنید (مانند "mouse,progress").
تغییر مقدار بذر (seed) تابع درهم‌سازی.
فایل زیرنویس/توضیحات (بخش قالب گزارش عنوان را ببینید).
اندازه عنوان.
رنگ عنوان در قالب هگزادسیمال.
مدت‌زمان نمایش عنوان.
آفست افقی عنوان (0 برای وسط‌چین کردن عناوین).
خروجی دادن یک جریان تصویر PPM به یک فایل (برای خروجی استاندارد از '-' استفاده کنید).

این گزینه به‌طور خودکار نوار پیشرفت را در ابتدا مخفی کرده و گزینه 'stop-at-end' را فعال می‌کند مگر اینکه رفتار دیگری مشخص شده باشد.

نرخ فریم خروجی (25، 30، 60). همراه با --output-ppm-stream استفاده می‌شود.
خروجی دادن یک فایل لاگ با قالب سفارشی (برای خروجی استاندارد از '-' استفاده کنید).
بارگذاری یک فایل پیکربندی.
ذخیره یک فایل پیکربندی حاوی گزینه‌های جاری.
یک دایرکتوری کنترل نسخه پشتیبانی‌شده، یک فایل لاگ از پیش تولیدشده (دستورات لاگ یا قالب گزارش سفارشی را ببینید)، یک فایل پیکربندی Gource یا '-' جهت خواندن از STDIN.

اگر مسیر مشخص نشود، gource تلاش می‌کند لاگ را از دایرکتوری جاری بخواند.

مشاهده لاگ مخزن در مسیر جاری:

gource

مشاهده لاگ پروژه‌ای در دایرکتوری مشخص‌شده:

gource my-project-dir

برای پروژه‌های بزرگ، تولید لاگ تاریخچه پروژه ممکن است زمان زیادی ببرد. برای سیستم‌های کنترل نسخه متمرکز مانند SVN، تولید لاگ باعث بارگذاری روی سرور مرکزی می‌شود.

در این موارد، ممکن است بخواهید یک نسخه از لاگ را برای استفاده‌های بعدی ذخیره کنید.

می‌توانید با استفاده از گزینه --log-command VCS یک لاگ با قالب اختصاصی سیستم کنترل نسخه تولید کنید:

cd my-svn-project `gource --log-command svn` > my-svn-project.log gource my-svn-project.log

همچنین می‌توانید ترتیبی دهید که Gource یک نسخه از فایل لاگ را در قالب اختصاصی خود بنویسد:

gource --output-custom-log my-project-custom.log

از 'cvs2cl' برای تولید لاگ استفاده کرده و سپس آن را به Gource ارسال کنید:

cvs2cl --chrono --stdout --xml -g-q > my-cvs-project.log gource my-cvs-project.log

اگر می‌خواهید از Gource با سیستمی غیر از موارد پشتیبانی‌شده استفاده کنید، یک قالب گزارش سفارشی تفکیک‌شده با خط عمودی ('|') وجود دارد:

timestamp - برچسب زمانی یونیکس یا ISO 8601 از زمان وقوع به‌روزرسانی.
username  - نام کاربری که به‌روزرسانی را انجام داده است.
type      - یک کاراکتر برای نوع به‌روزرسانی - (A)فزوده، (M)تغییر یا (D)حذف.
file      - مسیر فایل به‌روزشده.
colour    - رنگ فایل در قالب هگزادسیمال (FFFFFF). اختیاری.

نرم‌افزار Gource می‌تواند با تعیین یک فایل عنوان (با استفاده از --caption-file) در قالب تفکیک‌شده با خط عمودی ('|') زیر، عناوین و زیرنویس‌ها را در طول خط زمانی نمایش دهد:

timestamp - برچسب زمانی یونیکس یا ISO 8601 از زمان نمایش عنوان.
caption   - متن عنوان

راهنمای صفحه خانگی را برای نمونه‌های ضبط ویدیو با Gource مشاهده کنید:

https://github.com/acaudwell/Gource/wiki/Videos

برای راهنماها و نمونه‌های استفاده از Gource با سیستم‌های مختلف کنترل نسخه، به صفحه خانگی Gource مراجعه کنید:

http://gource.io

زمان نمایش‌داده‌شده در گوشه بالای سمت چپ صفحه در ابتدا از نخستین مدخل لاگ خوانده‌شده تنظیم می‌شود و بر اساس سرعت شبیه‌سازی (--seconds-per-day) افزایش می‌یابد.

فشردن کلید SPACE در هر زمان شبیه‌سازی را متوقف/از سر می‌گیرد. در حالت توقف می‌توانید از ماوس برای بررسی جزئیات فایل‌ها و کاربران مجزا استفاده کنید.

کلید TAB به ترتیب میان کاربران مرئی فعلی حرکت و آن‌ها را انتخاب می‌کند.

حالت دوربین (ردیابی فعالیت‌ها یا نمایش کل درخت کد) را می‌توان با کلیک دکمه وسط ماوس تغییر داد.

می‌توانید کلید چپ ماوس را برای کنترل دستی دوربین بکشید. کلید راست ماوس نمای دید را می‌چرخاند.

دستورات تعاملی صفحه‌کلید:

(V)   تغییر حالت دوربین
(C)   نمایش لوگوی Gource
(K)   تغییر وضعیت راهنمای پسوند فایل‌ها
(M)   تغییر وضعیت نمایش نشانگر ماوس
(N)   پرش به جلو در زمان تا مدخل بعدی لاگ
(S)   تصادفی‌سازی رنگ‌ها
(D)   تغییر حالت نمایش نام دایرکتوری‌ها
(F)   تغییر حالت نمایش نام فایل‌ها
(U)   تغییر حالت نمایش نام کاربران
(G)   تغییر وضعیت نمایش کاربران
(T)   تغییر وضعیت نمایش یال‌های درخت دایرکتوری
(R)   تغییر وضعیت نمایش یال‌های دایرکتوری ریشه
(<>)  تنظیم مقیاس زمانی / سرعت حرکت آواتار کاربران
(+-)  تنظیم سرعت شبیه‌سازی
(Keypad +-) تنظیم بزرگ‌نمایی دوربین
(TAB) پیمایش میان کاربران مرئی
(F12) تصویربرداری از صفحه (اسکرین‌شات)
(Alt+Enter) تغییر وضعیت تمام‌صفحه
(ESC) خروج

Written by Andrew Caudwell
Project Homepage: http://gource.io

Copyright (C) 2009 Andrew Caudwell (acaudwell@gmail.com)
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version
3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses>.

Catalyst IT (catalyst.net.nz)
جهت حمایت از توسعه Gource!