~3 min read • Updated Feb 21, 2026
1. مقدمه
ویژگی Git™ Version Control در cPanel به شما امکان میدهد مخازن Git مدیریتشده را استقرار دهید. استقرار معمولاً به معنای انتقال کد نهایی به محیط تولید است. شما میتوانید استقرار را بهصورت خودکار (Push Deployment) یا دستی (Pull Deployment) پیکربندی کنید.
برای مثال، میتوانید تغییرات را روی سیستم محلی انجام دهید و سپس آنها را بهصورت خودکار به یک دایرکتوری روی حساب cPanel ارسال کنید.
برای اطلاعات بیشتر:
- مستندات Git™ Version Control
- مستندات Advanced Configuration and Troubleshooting
- مستندات Common Git Commands
2. پیشنیازهای استقرار
قبل از استقرار، مخزن باید شرایط زیر را داشته باشد:
- وجود یک فایل معتبر
.cpanel.ymlدر ریشه مخزن - وجود یک یا چند شاخه محلی یا ریموت
- پاک بودن Working Tree
اگر مخزن این شرایط را نداشته باشد، اطلاعات استقرار نمایش داده نمیشود و قابلیت Deployment غیرفعال خواهد شد.
3. فایل YAML استقرار (.cpanel.yml)
فایل .cpanel.yml مشخص میکند که چه فایلهایی و چگونه باید استقرار یابند. این فایل باید در ریشه هر مخزن مدیریتشده قرار گیرد.
نکات مهم:
- نمونههای زیر فقط مثال هستند و باید مطابق نیاز شما تغییر کنند.
- هرگز از wildcard مانند
*برای استقرار همه فایلها استفاده نکنید (ممکن است دایرکتوری.gitنیز منتقل شود). - از کاراکترهای نامعتبر YAML استفاده نکنید.
3.1 استقرار فایلهای تکی
---
deployment:
tasks:
- export DEPLOYPATH=/home/example/public_html/
- /bin/cp index.html $DEPLOYPATH
- /bin/cp style.css $DEPLOYPATH
توضیحات:
- خط 1: شروع فایل YAML
- خطوط 2 و 3: تعریف کلیدهای deployment و tasks
- خطوط 4 تا 6: لیست دستورات BASH برای استقرار
3.2 استقرار یک دایرکتوری کامل
---
deployment:
tasks:
- export DEPLOYPATH=/home/example/public_html/
- /bin/cp -R images $DEPLOYPATH
توضیحات مشابه مثال قبل است.
4. استقرار خودکار (Push Deployment)
نکته مهم:
cPanel بهصورت خودکار یک post-receive hook به مخازن مدیریتشده اضافه میکند.
وقتی تغییرات را به مخزن cPanel Push میکنید و فایل .cpanel.yml وجود دارد، سیستم بهصورت خودکار استقرار را انجام میدهد.
در Push Deployment:
- شما تغییرات را از مخزن ریموت Pull میکنید
- سپس آنها را به مخزن cPanel Push میکنید
- سیستم بهصورت خودکار دستورات
.cpanel.ymlرا اجرا میکند
نکته: میتوانید بدون تغییر جدید نیز استقرار دستی انجام دهید.
5. استقرار دستی (Pull Deployment)
در Pull Deployment:
- شما تغییرات را از سیستم محلی به مخزن ریموت Push میکنید
- در cPanel روی Update from Remote کلیک میکنید
- تغییرات به مخزن cPanel منتقل میشود
- با کلیک روی Deploy HEAD Commit استقرار انجام میشود
این روش استقرار خودکار ندارد و باید هر بار مراحل را تکرار کنید.
نتیجهگیری
با استفاده از فایل .cpanel.yml و انتخاب روش مناسب (Push یا Pull)، میتوانید فرآیند استقرار کد را در cPanel مدیریت کنید. Push Deployment برای استقرار خودکار مناسب است، در حالی که Pull Deployment کنترل دستی بیشتری ارائه میدهد.
Written & researched by Dr. Shahin Siami