بسیاری از تیم‌های برنامه‌نویسی ترجیح می‌دهند سورس‌کد پروژه‌های خود را روی سرور Git اختصاصی خودشان نگه دارند؛ نه روی GitHub یا GitLab. دلایل متعددی پشت این تصمیم وجود دارد: از مشکلات تحریم و فیلترینگ گرفته تا نگرانی‌های امنیتی درباره قرار دادن کد تجاری روی سرورهای خارجی. اما راه‌اندازی یک گیت سرور شخصی آن‌قدرها هم پیچیده نیست؛ به‌خصوص اگر ابزار درستی انتخاب کنید.

💡 Gitea چیست؟
سرویس Git خودمیزبان (Self-hosted)؛ متن‌باز و رایگان که فقط با 1 گیگابایت رم اجرا می‌شود. ✅ جایگزین سبک و کارآمد GitHub و GitLab ✅ نصب و راه‌اندازی در کمتر از 30 دقیقه

حتماً زمانی که این مقاله را باز کرده‌اید؛ به دنبال راهی هستید که کنترل کامل روی ریپازیتوری تیمتان داشته باشید. در این راهنما همراه تیم وب داده قدم‌به‌قدم پیش می‌رویم: از آشنایی با مفهوم سرور گیت خصوصی تا نصب Gitea روی سرور مجازی لینوکس و ساخت اولین ریپازیتوری خصوصی. تمام دستورات بر اساس مستندات رسمی Gitea (نسخه 1.25) تست و به‌روزرسانی شده‌اند. پس همراه ما باشید

🔶 برای راه‌اندازی سرور گیت تیمی به یک VPS لینوکس نیاز دارید. وب داده VPS با اوبونتو 22.04 و 24.04 ارائه می‌دهد که مناسب نصب Gitea است. 👉 خرید سرور مجازی از وب‌داده

سرور Git اختصاصی چیست؟

سرور Git اختصاصی به سروری گفته می‌شود که نرم‌افزار مدیریت مخزن Git روی آن نصب شده و تحت کنترل کامل شما قرار دارد. به‌جای اینکه کد پروژه‌هایتان روی سرورهای GitHub در آمریکا ذخیره شود؛ همه چیز روی VPS خودتان نگهداری می‌شود و شما مالک واقعی داده‌هایتان هستید.

تصور کنید GitHub یک آپارتمان اجاره‌ای است که قوانین ساختمان را صاحبخانه تعیین می‌کند. گیت سرور شخصی مثل خانه‌ای است که کلید آن فقط دست شماست. هر تنظیمی را می‌توانید تغییر دهید و هیچ محدودیتی در تعداد ریپازیتوری یا حجم فایل ندارید.

ساختار گیت سرور شخصی
═══════════════════════════

 اینترنت 🌐
    ⬇️
 سرور مجازی شما (VPS)
    ├─ 🔒 Nginx (Reverse Proxy + SSL)
    ├─ ☕ Gitea (مدیریت مخزن)
    ├─ 🗄️ SQLite / MySQL (دیتابیس)
    └─ 💾 ریپازیتوری‌های Git
         ├─ پروژه A (خصوصی)
         ├─ پروژه B (خصوصی)
         └─ پروژه C (عمومی)
🔸 نکته فنی: طبق مستندات رسمی Gitea؛ این نرم‌افزار از دیتابیس‌های PostgreSQL (نسخه 12+)، MySQL (نسخه 8+)، MariaDB (نسخه ۱۰10.4+) و SQLite پشتیبانی می‌کند. برای تیم‌های کوچک SQLite کاملاً کافی است.

چرا به سرور Git تیمی نیاز دارید؟

شاید با خودتان بگویید GitHub رایگان است و مشکلی ندارد. اما دلایل واقعی وجود دارد که بسیاری از تیم‌های توسعه به سمت راه‌اندازی سرور Git خصوصی حرکت کرده‌اند:

  • امنیت و حریم خصوصی: سورس‌کد پروژه‌های تجاری حساس‌ترین دارایی یک شرکت نرم‌افزاری است. با یک مخزن خصوصی روی سرور خودتان مطمئن هستید کسی جز اعضای تیم به کد دسترسی ندارد.
  • مشکلات تحریم و فیلترینگ: کاربران ایرانی بارها با محدودیت دسترسی به GitHub و GitLab مواجه شده‌اند. یک گیت سرور داخلی این مشکل را ریشه‌ای حل می‌کند.
  • بدون محدودیت فضا و تعداد: در سرویس‌های رایگان محدودیت حجم فایل و تعداد ریپازیتوری وجود دارد. روی وی پی اس خودتان چنین محدودیتی نخواهید داشت.
  • سرعت بالاتر در شبکه داخلی: وقتی سرور Git در دیتاسنتر نزدیک شما قرار دارد؛ عملیات Push و Pull به‌شکل محسوسی سریع‌تر انجام می‌شود.
⚠️ صادقانه بگوییم: راه‌اندازی سرور اختصاصی مسئولیت نگهداری، آپدیت و پشتیبان‌گیری را هم به شما منتقل می‌کند. اگر تیم فنی برای مدیریت سرور ندارید و تعداد افرادتان کمتر از 3۳ نفر است؛ شاید استفاده از نسخه رایگان GitHub برایتان کافی باشد.

معرفی Gitea؛ جایگزین سبک GitHub و GitLab

Gitea یک پلتفرم متن‌باز مدیریت مخزن Git است که در سال 2016 از پروژه Gogs جدا شد و با زبان Go بازنویسی شده. از آن زمان تاکنون توسعه بسیار فعالی داشته و آخرین نسخه پایدار آن (۱1.25.4) در ژانویه 2026 منتشر شده است. این ابزار تحت لایسنس MIT کاملاً رایگان است و رابط کاربری آن شباهت زیادی به GitHub دارد؛ پس اگر با GitHub کار کرده باشید محیط Gitea برایتان آشنا خواهد بود.

اما سؤال اصلی اینجاست: چرا Gitea و نه GitLab؟ بیایید با اعداد واقعی مقایسه کنیم.

جدول مقایسه Gitea و GitLab

ویژگی☕ Gitea🦊 GitLab CE
حداقل رم256 مگابایت (۱ گیگ پیشنهادی)4 گیگابایت (8 گیگ پیشنهادی)
حداقل CPU1 هسته4 هسته
زبان برنامه‌نویسیGo (باینری واحد)Ruby on Rails
زمان نصبکمتر از 10 دقیقه30 تا 60 دقیقه
CI/CDGitea Actions (سازگار با GitHub Actions)GitLab CI/CD (پیشرفته)
مناسب برایتیم‌های 1 تا 50 نفرهسازمان‌های 50+ نفره
Package Registry20+ نوع (npm, PyPI, Maven…)کامل + Container Registry
لایسنسMIT (کاملاً رایگان)CE رایگان / EE پولی
📌 نتیجه مقایسه: طبق بنچمارک‌های 2026 منتشرشده توسط جامعه متن‌باز؛ Gitea حدود 30 تا 50 درصد سریع‌تر از GitLab تحت بار مشابه پاسخ می‌دهد. اگر تیم شما کمتر از 50 نفر است و به CI/CD سطح سازمانی نیاز ندارید؛ Gitea بهترین انتخاب خواهد بود.

🎯 Gitea مناسب شماست اگر:

  • تیم 2 تا 20 نفره برنامه‌نویسی دارید.
  • VPS با منابع محدود (1 تا 2 گیگ رم) دارید.
  • به دنبال جایگزین GitHub هستید که خودتان مدیریت کنید.
  • به رابط کاربری ساده و شبیه GitHub علاقه دارید.

پیش‌نیازهای نصب Gitea

قبل از شروع نصب مطمئن شوید موارد زیر آماده است:

  • سرور مجازی لینوکس (VPS): حداقل 1 هسته CPU و 1 گیگابایت رم. برای تیم‌های 10+ نفره 2 هسته و 2 گیگ رم پیشنهاد می‌شود.
  • سیستم‌عامل: اوبونتو 22.04 یا 24.04 LTS
  • دسترسی root یا sudo: برای نصب پکیج‌ها و ساخت کاربر سیستمی
  • Git نسخه 2.0 یا بالاتر: معمولاً به‌صورت پیش‌فرض نصب است
  • دامنه یا ساب‌دامنه (اختیاری): مثلاً git.yourdomain.com
svgexport 58 راه‌اندازی سرور Git خصوصی روی VPSسرور مجازی رایگان
سروری مجازی با قدرت یک غول دیجیتال به صورت رایگان در دستان شما است!
برای مشاهده پلن‌های
سرور مجازی رایگان وب‌داده
روی دکمه زیر کلیک کنید

آموزش نصب و پیکربندی Gitea روی سرور مجازی

در این بخش همراه تیم وبداده باشید تا به‌صورت عملی نصب Gitea روی سرور مجازی لینوکس را انجام دهیم. تمام مراحل بر اساس داکیومنت رسمی Gitea در آدرس docs.gitea.com تست‌شده هستند.

🔸 سناریوی آموزشی:

WebDade.com
🖥️ سرور مجازی اوبونتو 24.04
   ├─ CPU: 1 Core
   ├─ RAM: 1 GB
   ├─ Storage: 20 GB NVMe SSD
   └─ Gitea v1.25.x + SQLite

مرحله اول – آپدیت سیستم و نصب پیش‌نیازها

ابتدا وارد سرور مجازی لینوکس خود شوید و پکیج‌ها را به‌روزرسانی کنید. سپس Git و ابزارهای ضروری را نصب کنید. برای این کار پس از ورود به ترمینال سرور لینوکسی (از طریق SSH یا برنامه پوتی)، دستورهای زیر را به ترتیب در ترمینال لینوکس وارد کنید:

sudo apt update && sudo apt upgrade -y
sudo apt install git wget curl -y
سرور گیت خصوصی
راه‌اندازی سرور Git

در ادامه با استفاده از کامند زیر نسخه Git یا Git Version را بررسی کنید (حداقل نسخه 2.0 لازم است):

git --version

همانطور که در تصویر زیر مشاهده می کنید ورژن گیت سرور من 2.43.0 است.

سرور Git تیمی
📌 برای تیم‌های کوچک SQLite کافی است و نیازی به نصب دیتابیس جداگانه نیست. اگر از MySQL یا PostgreSQL استفاده می‌کنید آن‌ها را هم در این مرحله نصب کنید.

مرحله دوم- ساخت کاربر سیستمی سرور Git اختصاصی

طبق توصیه مستندات رسمی Gitea؛ این سرویس باید با یک کاربر غیر root اجرا شود. دستور زیر را در ترمینال سرور (همان محیط SSH که به سرور وصل شده‌اید) وارد کنید تا یک کاربر سیستمی بدون رمز عبور به نام git بسازید:

sudo adduser \
  --system \
  --shell /bin/bash \
  --gecos 'Git Version Control' \
  --group \
  --disabled-password \
  --home /home/git \
  git
نصب Gitea

این کاربر فقط از طریق سرویس Gitea قابل استفاده است و دایرکتوری خانه آن /home/git خواهد بود.

مرحله سوم- دانلود و نصب باینری Gitea

آخرین نسخه پایدار Gitea را از سایت رسمی دانلود کنید. طبق داکیومنت Gitea در زمان نگارش این مقاله نسخه 1.25.4 آخرین ریلیز پایدار است. برای نصب Gitea روی سرور مجازی سه دستور زیر را به ترتیب در ترمینال سرور وارد کنید:

  • دستور اول فایل باینری Gitea را از سایت رسمی دانلود و در پوشه موقت /tmp ذخیره می‌کند.
  • دستور دوم فایل دانلودشده را به مسیر /usr/local/bin منتقل می‌کند تا از هر جای سیستم قابل اجرا باشد.
  • دستور سوم اجازه اجرا (Execute) به فایل می‌دهد.
wget -O /tmp/gitea https://dl.gitea.com/gitea/1.25.4/gitea-1.25.4-linux-amd64
sudo mv /tmp/gitea /usr/local/bin/gitea
sudo chmod +x /usr/local/bin/gitea
نصب Gitea روی سرور مجازی

در ادامه صحت نصب گیت را با استفاده از کامند زیر بررسی کنید:

gitea --version

مرحله چهارم- ساخت دایرکتوری‌ها و تنظیم دسترسی‌های سرور گیت

Gitea به دایرکتوری‌های مشخصی برای ذخیره تنظیمات، داده‌ها و لاگ نیاز دارد پس دستورهای زیر را به ترتیب در ترمینال سرور لینوکس خود اجرا کنید:

  • سه دستور اول پوشه‌های custom (شخصی‌سازی)، data (داده‌ها) و log (گزارش‌ها) را می‌سازد؛ مالکیت آن‌ها را به کاربر git می‌دهد و دسترسی را محدود می‌کند.
  • سه دستور بعدی پوشه تنظیمات /etc/gitea را می‌سازد و دسترسی آن را طوری تنظیم می‌کند که Gitea بتواند فایل app.ini را در آن بنویسد.
sudo mkdir -p /var/lib/gitea/{custom,data,log}
sudo chown -R git:git /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/

sudo mkdir -p /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea
راه‌اندازی سرور Git
⚠️ هشدار: دسترسی /etc/gitea موقتاً روی 770 تنظیم شده تا نصب‌کننده وب بتواند فایل تنظیمات را بنویسد. بعد از اتمام پیکربندی اولیه حتماً آن را به 750 تغییر دهید.

مرحله پنجم- ساخت سرویس Systemd

برای اجرای خودکار Gitea با بوت سرور، یک فایل سرویس بسازید برای این کار وارد محیط ویرایش فایل شوید و یک فایل سرویس به نام gitea.service بسازید:

sudo nano /etc/systemd/system/gitea.service

محتوای زیر را در فایل gitea.service که با nano باز کرده‌اید کپی کنید:

[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target

[Service]
RestartSec=3s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target
سرور گیت خصوصی

بعد از کپی کردن محتوا، کلیدهای Ctrl + O را بزنید و Enter کنید تا فایل ذخیره شود؛ سپس Ctrl + X را بزنید تا از محیط ویرایشگر nano خارج شوید.

در ادامه به کمک دستورهای زیر سرویس را فعال و اجرا کنید:

sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea
sudo systemctl status gitea

✅ اگر همه چیز درست باشد؛ در خروجی دستور آخر عبارت active (running) را به رنگ سبز می‌بینید. این یعنی Gitea روی پورت 3000 در حال اجراست برای خروج از صفحه وضعیت کلید Q را بزنید تا به ترمینال برگردید.

سرور Git اختصاصی

مرحله ششم- پیکربندی اولیه از طریق مرورگر

پس از انجام تمام مراحل قبل، نوبت آن است که مرورگرتان را باز کنید و آدرس http://YOUR_SERVER_IP:3000 را وارد کنید. (دقت داشته باشید که به جای عبارت YOUR_SERVER_IP می بایست آدرس آی پی سرور را وارد کنید).
صفحه تنظیمات اولیه Gitea نمایش داده می‌شود.

در صفحه Initial Configuration تنظیمات کلیدی برای نصب سرور گیت خصوصی:

  • Database Type: از منو SQLite3 را انتخاب نمایید.
  • Site Title: نام تیم یا سازمان
  • Repository Root Path: پیش‌فرض /home/git/gitea-repositories
  • Server Domain: آدرس IP یا دامنه سرور
  • Gitea Base URL: مثلاً http://git.yourdomain.com:3000/
  • Administrator Account: حتماً یک حساب ادمین در این بخش بسازید.
 Git سرور خصوصی

در انتها پس از وارد کردن تنظیمات برای ذخیره و اتمام مرحله نصب و راه اندازی سرور Git اختصاصی روی دکمه Install Gitea کلیک کنید. به این ترتیب مشاهده صفحه زیر به این معناست که شما موفق به راه اندازی و نصب سرور گیت اختصاصی شده اید.

نصب Gitea

📌 بعد از ذخیره تنظیمات دسترسی دایرکتوری تنظیمات را محدود کنید:

sudo chmod 750 /etc/gitea

تنظیمات امنیتی و مدیریت سرور گیت اختصاصی

نصب Gitea به اتمام رسید؛ اما بدون تنظیمات امنیتی سرور شما آسیب‌پذیر خواهد بود. این بخش را حتماً اجرا کنید.

فعال‌سازی فایروال UFW

در فایروال با استفاده از کامندهای زیر فقط پورت‌های ضروری را باز بگذارید:

sudo ufw allow 22/tcp      # SSH
sudo ufw allow 3000/tcp    # Gitea Web
sudo ufw enable

راه‌اندازی Reverse Proxy با Nginx

برای استفاده از SSL و دامنه اختصاصی Nginx را به‌عنوان Reverse Proxy تنظیم کنید:

sudo apt install nginx -y
sudo nano /etc/nginx/sites-available/gitea

محتوای زیر را در این فایل کپی کنید. این تنظیمات به Nginx می‌گوید که تمام درخواست‌های ورودی روی دامنه شما را به پورت 3000 (جایی که Gitea اجرا می‌شود) هدایت کند:

server {
    listen 80;
    server_name git.yourdomain.com;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

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

sudo ln -s /etc/nginx/sites-available/gitea /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
🔸 نکته فنی: حتماً با Let’s Encrypt گواهی SSL رایگان بگیرید. دستور sudo certbot --nginx -d git.yourdomain.com ارتباط را رمزنگاری می‌کند. توجه داشته باشید بعد از فعال‌سازی SSL در فایل app.ini مقدار ROOT_URL را به https:// تغییر دهید؛ اما PROTOCOL را روی http نگه دارید چون Nginx ترافیک HTTPS را مدیریت می‌کند.

غیرفعال‌ کردن ثبت‌نام عمومی در سرور Git

اگر سرور Git فقط برای تیم شماست ثبت‌نام عمومی را ببندید:

sudo nano /etc/gitea/app.ini
[service]
DISABLE_REGISTRATION = true
sudo systemctl restart gitea

ساخت کاربر و ریپازیتوری خصوصی Gitea

بعد از ورود با حساب ادمین از مسیر Site Administration → User Accounts → Create User برای هر عضو تیم حساب کاربری بسازید. گزینه “Must Change Password” را فعال کنید تا هر کاربر رمز خودش را انتخاب کند.

برای ساخت اولین ریپازیتوری روی دکمه “+” کلیک کنید و New Repository را بزنید. نام پروژه را وارد کنید و حتماً Visibility را روی Private بگذارید.

سپس ترمینال سیستم محلی خودتان (لپ‌تاپ یا کامپیوتر شخصی؛ نه سرور) را باز کنید. دستورات زیر ریپازیتوری را از سرور Gitea دانلود می‌کنند، یک فایل README می‌سازند و اولین commit را به سرور Push می‌کنند:

git clone http://git.yourdomain.com/username/my-project.git
cd my-project
echo "# My Project" > README.md
git add .
git commit -m "Initial commit"
git push origin main

اتصال به سرور گیت با SSH Key در Gitea

استفاده از SSH Key هم امن‌تر و هم راحت‌تر از رمز عبور است. روی سیستم محلی SSH Key بسازید:

ssh-keygen -t ed25519 -C "your_email@example.com"
cat ~/.ssh/id_ed25519.pub

کلید عمومی را از مسیر Settings → SSH/GPG Keys → Add Key در پنل Gitea اضافه کنید. حالا می‌توانید از SSH استفاده کنید:

git clone git@git.yourdomain.com:username/my-project.git

📌 اگر پورت SSH تغییر کرده در فایل ~/.ssh/config تنظیم کنید:

Host git.yourdomain.com
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

پشتیبان‌گیری از Gitea و ریپازیتوری‌های Git

پشتیبان‌گیری منظم حیاتی است. Gitea ابزار بکاپ داخلی دارد که ریپازیتوری‌ها، دیتابیس و تنظیمات را در یک فایل فشرده ذخیره می‌کند:

sudo -u git /usr/local/bin/gitea dump -c /etc/gitea/app.ini --work-path /var/lib/gitea

برای خودکارسازی بکاپ شبانه:

sudo crontab -u git -e
0 2 * * * /usr/local/bin/gitea dump -c /etc/gitea/app.ini --work-path /var/lib/gitea --file /home/git/backups/gitea-$(date +\%Y\%m\%d).zip

⚠️ هشدار مهم: فایل‌های بکاپ را فقط روی همان سرور نگه ندارید. حتماً یک کپی را به سرور یا فضای ذخیره‌سازی ابری دیگری منتقل کنید تا در صورت خرابی دیسک داده‌ها از دست نروند.

سرور مجازی مناسب برای راه اندازی سرور Git اختصاصی

برای اجرای بهینه Gitea به‌عنوان سرور گیت تیمی یک VPS با مشخصات مناسب لازم است. وب داده سرور مجازی لینوکس با ویژگی‌های زیر ارائه می‌دهد:

✅ سیستم‌عامل اوبونتو 24.04 آماده با قابلیت نصب با یک کلیک
✅ حداقل 1 گیگابایت رم (مناسب تیم‌های 1 تا 10 نفره)
✅ دیسک NVMe SSD پرسرعت
✅ پشتیبانی فنی 24 ساعته
✅ لوکیشن‌های متنوع: ایران، هلند، آلمان، فرانسه و آمریکا

svgexport 58 راه‌اندازی سرور Git خصوصی روی VPSسرور مجازی وب داده
VPS وب داده با حضور قدرتمند در بیش از 9 لوکیشن استراتژیک در سراسر جهان…
برای مشاهده موقعیت‌های
سرور های مجازی وب‌داده
روی دکمه زیر کلیک کنید

نتیجه‌گیری: راه‌اندازی گیت سرور شخصی با Gitea

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

Gitea به‌عنوان جایگزین سبک GitHub و GitLab با مصرف حداقل ۱ گیگابایت رم و نصب در کمتر از 30دقیقه گزینه‌ای هوشمندانه برای تیم‌هایی است که استقلال، امنیت و کنترل کامل روی کد را می‌خواهند. اگر تیم شما رشد کرد Gitea Actions (سازگار با GitHub Actions) امکان CI/CD را فراهم می‌کند و مهاجرت به GitLab هم در آینده امکان‌پذیر است.

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

سوالات متداول درباره آموزش نصب سرور گیت اختصاصی روی VPS

آیا Gitea واقعاً رایگان است؟

بله؛ Gitea تحت لایسنس MIT کاملاً رایگان و متن‌باز است. هیچ نسخه پولی، محدودیت تعداد کاربر یا ریپازیتوری ندارد. تنها هزینه شما سرور مجازی برای میزبانی آن است.

سارا صالحی ریحانی
سارا صالحی ریحانی

کارشناس IT، وردپرس و کپی‌رایتر حوزه هاستینگ. پس از سال‌ها تجربه در شبکه، به دنیای کلمات و تولید محتوا وارد شدم و حالا در تیم وب‌داده، مفاهیم پیچیده هاست و سرور را به زبانی ساده و کاربردی برای علاقه‌مندان به دنیای شبکه می‌نویسم.

مقاله‌ها: 142
پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *