Foundry(1) General Commands Manual Foundry(1)

foundry - یک محیط توسعه خط فرمان

foundry [OPTION]... COMMAND [COMMAND-OPTIONS]...

foundry یک محیط توسعه و سامانه ساخت است که برای میزکار GNOME طراحی شده است. این ابزار مدیریت پروژه، یکپارچه‌سازی خط لوله ساخت (build pipeline)، مدیریت SDK و ابزارهای توسعه گوناگونی را برای ساخت برنامه‌ها و کتابخانه‌ها فراهم می‌کند.

راه‌اندازی یک پروژه جدید در دایرکتوری جاری.

ورود به محیط پروژه در دایرکتوری جاری.
ورود به محیط ساخت پروژه، مشابه با خط لوله ساخت (build pipeline).
راه‌اندازی یک شل در محیط پروژه یا اجرای command.

تشخیص زبان برنامه‌نویسی یک فایل.
جستجوی فایل‌ها با استفاده از سازوکار جستجو و جایگزینی Foundry.
فهرست کردن نمادهای موجود در FILE به‌صورت درختی.
یافتن نماد در یک موقعیت مشخص در FILE در سطر LINE و آفست LINE_OFFSET (شروع هر دو از ۱). از --tree برای چاپ نمادهای والد به‌صورت درختی استفاده کنید.
نمایه‌سازی FILE با استفاده از سرویس ctags و ارسال داده‌های ctags به stdout..SS "دستورات ساخت (Build Commands)"
پایپ‌لاین ساخت فعلی را می‌سازد.
یک دستور پروژه را در محیط زمان اجرا (runtime) اجرا می‌کند.

اطلاعات مربوط به پایپ‌لاین ساخت را نمایش می‌دهد.
فلگ‌های ساخت را برای پایپ‌لاین ساخت نمایش می‌دهد.
اهداف ساخت (targets) را برای پایپ‌لاین ساخت فهرست می‌کند.
نشان می‌دهد کدام پایپ‌لاین فعال است.
حافظه موقت (کَش) پایپ‌لاین را باطل می‌کند.
یک فضای کاری را به پایپ‌لاین ساخت پیوند می‌دهد. این مرحله در PHASE از پایپ‌لاین فعلی اجرا شده و پایپ‌لاین پیوندداده‌شده را در LINKED_PHASE اجرا می‌کند.
پیوند یک فضای کاری را از پایپ‌لاین ساخت لغو می‌کند. مدخل‌های منطبق با PHASE و PROJECT_DIRECTORY را از فضاهای کاری پیوندداده‌شده حذف می‌کند.

پیکربندی‌های موجود را فهرست می‌کند.
پیکربندی فعال را تغییر می‌دهد.

کیت‌های توسعه (SDK) موجود را فهرست می‌کند.
یک SDK مشخص را نصب می‌کند.
SDK فعال را برای پایپ‌لاین ساخت تغییر می‌دهد. در صورت امکان، این کار پیکربندی فعلی شما را برای استفاده از SDK به‌روزرسانی می‌کند.
وارد یک پوسته (shell) در محیط SDK می‌شود.
محل قرارگیری برنامه را نشان می‌دهد.SS "دستورات وابستگی‌ها (Dependencies Commands)"
فهرست کردن وابستگی‌های پروژه.
به‌روزرسانی وابستگی‌های پروژه. این دستور وابستگی‌ها را کامپایل و ساخت (build) نمی‌کند. برای ساخت وابستگی‌ها از foundry build استفاده کنید.

فهرست کردن دستگاه‌های در دسترس.
تغییر دستگاه هدف فعلی.

استقرار پروژه روی دستگاه فعال.

فهرست کردن آزمون‌های واحد (unit tests) در دسترس.
اجرای یک آزمون واحد.

استفاده از موتور جست‌وجوی سراسری برای جست‌وجو در کل پروژه.
باز کردن FILE در مرورگر فایل ترجیحی.

دریافت مقدار یک تنظیم با اعمال اولویت تنظیمات به ترتیب از بازنویسی‌های کاربر (user overrides)، تنظیمات پروژه، و تنظیمات سراسری برنامه.
تنظیم مقدار یک پیکربندی. از --global برای تعیین تنظیم به عنوان پیش‌فرض کاربر استفاده کنید. از --project برای تعیین تنظیم به عنوان پیش‌فرض پروژه (شامل سایر کاربرانی که پروژه را کلون می‌کنند) استفاده کنید. در غیر این صورت، این تنظیم تنها برای کاربر فعلی و در پروژه فعلی اعمال می‌شود.

دریافت یک کلید API از مخزن داده‌های محرمانه (secret store). برای مثال: foundry secret get-api-key gitlab.gnome.org gitlab
بررسی زمان انقضای کلید API برای یک سرویس در یک نام میزبان (hostname) مشخص. تاریخ انقضا در منطقه زمانی محلی نمایش داده خواهد شد.
چرخش و نوسازی (rotate) کلید API برای یک سرویس در یک نام میزبان مشخص. کلید API با استفاده از یک افزونه ثبت‌شده برای چرخش کلید تغییر یافته و کلید جدید به‌صورت امن ذخیره خواهد شد.
ذخیره یک کلید API در مخزن داده‌های محرمانه (secret store)..SS "دستورهای عیب‌یابی (Diagnosis Commands)"
تشخیص و عیب‌یابی مشکلات در FILE

دستورهای زیر تنها هنگامی در دسترس هستند که ویژگی‌های خاصی در زمان ساخت فعال شده باشند:

کلون کردن یک مخزن در یک دایرکتوری پروژهٔ جدید.

نصب یک بستهٔ مستندات خاص.
فهرست کردن بسته‌های مستندات موجود.
جستجو در مستندات.

فهرست کردن یکپارچه‌سازی‌های forge موجود.
فهرست کردن issueها از forge.
فهرست کردن درخواست‌های ادغام (merge requests) از forge.
نمایش اطلاعات دربارهٔ پروژهٔ forge.
تعویض یکپارچه‌سازی فعال forge. از --clear برای پاک‌سازی تنظیمات forge به‌جای تنظیم کردن آن استفاده کنید.
نمایش اطلاعات دربارهٔ کاربر forge.

جستجوی الگوهای متنی در فایل‌های منبع.

فهرست کردن مدل‌های زبانی موجود.
فهرست کردن منابع موجود.
فهرست کردن ابزارهای LLM موجود.
تکمیل متن با استفاده از یک مدل زبانی..SS دستورهای MCP (نیازمند feature-mcp)
اجرای سرور MCP. این سرور از طریق stdin/stdout و با استفاده از Model Context Protocol ارتباط برقرار می‌کند.

فهرست کردن افزونه‌های سرور زبان (LSP) موجود.
تنظیم LSP ترجیحی برای یک زبان.
اجرای یک سرور زبان برای زبانی مشخص.

ایجاد یک پروژه جدید از روی یک الگو.
فهرست کردن الگوهای پروژه موجود.

نمایش اطلاعات blame برای فایل‌ها.
دریافت تغییرات از مخازن دوردست (remote).
فهرست کردن فایل‌های نادیده‌گرفته‌شده.
فهرست کردن اطلاعات کنترل نسخه.
فهرست کردن شاخه‌های موجود در مخزن.
فهرست کردن فایل‌های ردیابی‌شده توسط کنترل نسخه.
فهرست کردن مخازن دوردست.
فهرست کردن برچسب‌ها (تگ‌ها) در مخزن.
نمایش تاریخچه ثبت تغییرات (commit) برای FILE.
تغییر شاخه‌ها یا checkoutها.

استفاده از حالت اشتراکی برای دستور.
نمایش اطلاعات راهنما برای دستور..SH "مثال‌ها (EXAMPLES)"

راه‌اندازی یک پروژه جدید:

foundry init

ساخت پروژه:

foundry build

اجرای یک دستور پروژه:

foundry run

ورود به محیط ساخت:

foundry devenv

فهرست کردن SDKهای موجود:

foundry sdk list

نصب یک SDK:

foundry sdk install org.gnome.Sdk/x86_64/master

راه‌اندازی یک سرور زبان:

foundry lsp run python3

ممکن است Foundry با غیرفعال یا حذف شدن ویژگی‌های گوناگونی کامپایل شده باشد. اگر ویژگی زیربنایی مربوطه در نسخهٔ Foundry شما کامپایل نشده باشد، ممکن است برخی از دستورها در دسترس نباشند.

برای اطلاعات بیشتر، وب‌سایت زیر را ببینید: https://devsuite.app

گزارش‌های اشکال را می‌توانید در نشانی زیر یافته یا ثبت کنید: https://gitlab.gnome.org/chergert/foundry/issues

November 2025