مستندات¶
این راهنمای مقدماتی به شما کمک میکند ابزارها و دانش لازم برای مشارکت در مستندات را به دست آورید.
اگر با زبان reStructuredText آشنا نیستید، مقدمه آن را بخوانید. سپس، دو روش برای شروع مشارکت در مستندات وجود دارد:
برای تغییرات جزئی، مانند افزودن یک پاراگراف یا اصلاح یک typo، توصیه میکنیم از رابط GitHub استفاده کنید. این آسانترین و سریعترین راه برای ارسال تغییرات است، و برای افراد غیر فنی مناسب است. مستقیماً به بخش مشارکت در مستندات بروید تا شروع کنید.
برای تغییرات پیچیدهتر، مانند افزودن یک صفحه جدید، استفاده از Git و کار از یک کپی محلی از مستندات ضروری است. ابتدا دستورالعملهای بخش راهاندازی محیط را برای آمادهسازی محیط خود دنبال کنید.
همچنین ببینید
reStructuredText (RST) — متن بازساختارمند¶
مستندات به reStructuredText (RST) نوشته شده است، یک lightweight markup language که شامل متن معمولی همراه با markup است، که اجازه میدهد headings، images، notes و غیره گنجانده شوند. RST آسان برای استفاده است، حتی اگر با آن آشنا نباشید.
راهاندازی محیط¶
دستورالعملهای زیر به شما کمک میکند محیط خود را برای ایجاد تغییرات محلی در مستندات و سپس push کردن آنها به GitHub آماده کنید. اگر قبلاً این مرحله را تکمیل کردهاید یا میخواهید از رابط GitHub تغییراتی ایجاد کنید، از این بخش رد شوید و به مشارکت در مستندات بروید.
ابتدا، یک حساب GitHub ایجاد کنید. Odoo از GitHub برای مدیریت کد منبع محصولات خود استفاده میکند، و این جایی است که تغییرات خود را ارسال خواهید کرد.
یک کلید SSH جدید تولید کرده و آن را در حساب GitHub خود ثبت کنید.
به github.com/odoo/documentation بروید و روی دکمه Fork در گوشه بالا-راست کلیک کنید تا یک fork (your own copy) از مخزن در حساب خود ایجاد کنید. این یک کپی از پایگاه کد ایجاد میکند که میتوانید بدون تأثیر بر پایگاه کد اصلی در آن تغییراتی ایجاد کنید. اگر در Odoo کار میکنید این مرحله را رد کنید.
Git را نصب کنید. این یک ابزار command-line (a text interface) است که اجازه میدهد تاریخچه تغییرات اعمالشده روی یک فایل را ردیابی کنید و مهمتر از آن، روی نسخههای مختلف آن فایل بهطور همزمان کار کنید. این بدان معنی است که نیازی به نگرانی درباره بازنویسی کار در حال انتظار شخص دیگری هنگام ایجاد تغییرات نیست.
بررسی کنید که مسیر نصب Git در متغیر
PATHسیستم شما گنجانده شده باشد.از راهنمای بهروزرسانی متغیر PATH در Linux و macOS با مسیر نصب Git (به طور پیشفرض
/usr/bin/git) پیروی کنید.راهنمای بهروزرسانی متغیر PATH در Windows را با مسیر نصب Git دنبال کنید (بهطور پیشفرض
C:\Program Files\Git).Git را پیکربندی کنید تا خود را بهعنوان نویسنده مشارکتهای آیندهتان شناسایی کنید. همان آدرس ایمیلی را که برای ثبتنام در GitHub استفاده کردید وارد کنید.
$ git config --global user.name "Your Name" $ git config --global user.email "youremail@example.com"
منابع را با Git کلون کنید و به مخزن محلی بروید.
$ git clone git@github.com:odoo/documentation.git $ cd documentation
Git را پیکربندی کنید تا تغییرات را به fork خود push کند بهجای codebase اصلی. در دستورات زیر،
<your_github_account>را با نام حساب GitHub که fork را روی آن ایجاد کردهاید جایگزین کنید. اگر در Odoo کار میکنید این مرحله را رد کنید.$ git remote add dev git@github.com:<your_github_account>/documentation.gitGit را پیکربندی کنید تا همکاری بین writers که از سیستمهای مختلف میآیند را آسان کند.
$ git config --global core.autocrlf input $ git config commit.template `pwd`/commit_template.txt
$ git config --global core.autocrlf true $ git config commit.template %CD%\commit_template.txt
وابستگیهای Python مستندات را با pip نصب کنید.
$ pip install -r requirements.txtتأیید کنید که دایرکتوری نصب وابستگیهای Python در متغیر
PATHسیستم شما گنجانده شده است.راهنمای بهروزرسانی متغیر PATH در Linux و macOS را با مسیر نصب وابستگیهای Python دنبال کنید (بهطور پیشفرض
~/.local/bin).راهنمای بهروزرسانی متغیر PATH در Windows را با مسیر نصب وابستگیهای Python دنبال کنید.
Make را نصب کنید.
$ sudo apt install make -yراهنمای نصب Make در macOS را دنبال کنید
راهنمای نصب Make در Windows را دنبال کنید.
شما اکنون آماده اولین مشارکت خود با Git هستید.
مشارکت در مستندات¶
ابتدا، یک حساب GitHub ایجاد کنید. Odoo از GitHub برای مدیریت کد منبع محصولات خود استفاده میکند، و این جایی است که تغییرات خود را ارسال خواهید کرد.
تأیید کنید که مستندات را در نسخهای که قصد تغییر آن را دارید مرور میکنید. نسخه را میتوان از منوی کشویی در منوی بالا انتخاب کرد.
به صفحهای که میخواهید تغییر دهید بروید و روی دکمه Edit on GitHub در گوشه بالا-راست صفحه کلیک کنید.
روی دکمه Fork this repository کلیک کنید تا یک fork (your own copy) از مخزن در حساب خود ایجاد کنید. این یک کپی از پایگاه کد ایجاد میکند که میتوانید بدون تأثیر بر پایگاه کد اصلی در آن تغییراتی ایجاد کنید. اگر در Odoo کار میکنید این مرحله را رد کنید.
تغییرات مورد نظر را اعمال کنید در حالی که از دستورالعملهای content و RST پیروی میکنید.
نکته
روی دکمه Preview changes کلیک کنید تا مشارکت خود را در فرمت قابل خواندنتر برای انسان مرور کنید. آگاه باشید که preview نمیتواند همه markups را بهدرستی مدیریت کند. بهعنوان مثال، notes و tips بهصورت متن ساده نمایش داده میشوند.
به پایین صفحه بروید و فرم کوچک را برای پیشنهاد تغییرات خود پر کنید. در اولین کادر متنی، خلاصهای بسیار کوتاه از تغییرات خود بنویسید. بهعنوان مثال، "Fix a typo" یا "Add documentation for invoicing of sales orders." در دومین کادر متنی، توضیح دهید چرا این تغییرات را پیشنهاد میکنید. سپس، روی دکمه Propose changes کلیک کنید.
تغییرات خود را بازبینی کرده و روی دکمه Create pull request کلیک کنید.
چکباکس Allow edits from maintainer را علامت بزنید. اگر در Odoo کار میکنید، این مرحله را رد کنید.
خلاصهای را که در مورد تغییرات خود نوشتید مرور کنید و دوباره روی دکمه Create pull request کلیک کنید.
در پایین صفحه، وضعیت قابلیت ادغام را بررسی کرده و هر مشکلی را برطرف کنید.
بهمحض اینکه PR شما آماده ادغام است، یکی از اعضای تیم Odoo بهطور خودکار برای بازبینی اختصاص داده میشود. اگر بازبین سؤالات یا اظهارنظرهایی داشته باشد، آنها را بهعنوان نظرات ارسال میکند و شما از طریق ایمیل مطلع میشوید. آن نظرات باید برای پیشرفت مشارکت حل شوند.
وقتی تغییرات شما تأیید شد، بازبین آنها را ادغام میکند و روز بعد بهصورت آنلاین ظاهر میشوند.
مهم
برخی از مراحل این راهنما نیاز به آشنایی با Git دارند. در اینجا چند آموزش و یک آموزش تعاملی وجود دارد اگر در نقطهای گیر کردید.
حالا که محیط شما راهاندازی شده، میتوانید شروع به مشارکت در مستندات کنید. در یک ترمینال، به دایرکتوری که sources را در آن کلون کردهاید بروید و راهنمای زیر را دنبال کنید.
نسخهای از مستندات را که میخواهید روی آن تغییراتی اعمال کنید انتخاب کنید. به یاد داشته باشید که مشارکتهایی که نسخه پشتیبانینشده Odoo را هدف قرار میدهند پذیرفته نمیشوند. این راهنما فرض میکند که تغییرات مستندات Odoo 19 را هدف قرار میدهند، که مربوط به branch
19.0است.یک branch جدید را با شروع از branch 19.0 ایجاد کنید. نام branch را با base branch پیشوند دهید:
19.0-.... اگر در Odoo کار میکنید، نام branch را با Odoo handle خود پسوند دهید:19.0-...-xyz.Example
$ git switch -c 19.0-explain-pricelists
$ git switch -c 19.0-explain-pricelists-xyz
تغییرات مورد نظر را اعمال کنید در حالی که از دستورالعملهای content و RST پیروی میکنید.
تمام تصاویر PNG اضافهشده یا اصلاحشده را فشرده کنید.
$ pngquant path/to/image.png $ mv path/to/image-fs8.png path/to/image.png
برای هر فایل RST که تغییر نام داده شده، یک redirect rule بنویسید.
مستندات را با make ساخت دهید. سپس،
_build/index.htmlرا در یک مرورگر وب باز کنید تا مستندات را با تغییرات خود مرور کنید.نکته
برای آشنایی با سایر دستورات مفید، از make help استفاده کنید.
تغییرات خود را commit کنید. یک پیام commit واضح بنویسید همانطور که در Git guidelines دستور داده شده.
$ git add . $ git commit
تغییرات خود را به fork خود push کنید، که برای آن alias remote
devرا اضافه کردیم.Example
$ git push -u dev 19.0-explain-pricelists
اگر در Odoo کار میکنید، تغییرات خود را مستقیماً به codebase اصلی که alias remote آن
originاست push کنید.Example
$ git push -u origin 19.0-explain-pricelists-xyz
یک PR در GitHub باز کنید تا تغییرات خود را برای بازبینی ارسال کنید.
19.0 را به عنوان پایه انتخاب کنید.
روی compare across forks کلیک کنید.
<your_github_account>/odoo را برای مخزن head انتخاب کنید.
<your_github_account>را با نام حساب GitHub که fork را روی آن ایجاد کردهاید جایگزین کنید. اگر در Odoo کار میکنید این مرحله را رد کنید.تغییرات خود را بازبینی کرده و روی دکمه Create pull request کلیک کنید.
چکباکس Allow edits from maintainer را علامت بزنید. اگر در Odoo کار میکنید، این مرحله را رد کنید.
توضیحات را تکمیل کرده و دوباره روی دکمه Create pull request کلیک کنید.
در پایین صفحه، وضعیت قابلیت ادغام را بررسی کرده و هر مشکلی را برطرف کنید.
بهمحض اینکه PR شما آماده ادغام است، یکی از اعضای تیم Odoo بهطور خودکار برای بازبینی اختصاص داده میشود. اگر بازبین سؤالات یا اظهارنظرهایی داشته باشد، آنها را بهعنوان نظرات ارسال میکند و شما از طریق ایمیل مطلع میشوید. آن نظرات باید برای پیشرفت مشارکت حل شوند.
وقتی تغییرات شما تأیید شد، بازبین آنها را ادغام میکند و روز بعد بهصورت آنلاین ظاهر میشوند.