GIT-LFS-CLONE(1)   GIT-LFS-CLONE(1)

git-lfs-clone - شبیه‌سازی کارآمد یک مخزن فعال‌شده با LFS

git lfs clone [گزینه‌های git clone] <مخزن> [<پوشه>]

شبیه‌سازی کارآمدتر یک مخزن گیت مجهز به LFS از طریق غیرفعال‌سازی LFS در حین اجرای git clone و سپس اجرای مستقیم دستور 'git lfs pull' بلافاصله پس از آن.

دستور 'git lfs clone' همچنین تمامی قلاب‌های سطح مخزن (.git/hooks) را که LFS برای کارکرد به آن‌ها نیاز دارد نصب می‌کند. اگر گزینه --separate-git-dir داده شود، قلاب‌ها در آن پوشه نصب خواهند شد.

این روش سریع‌تر از 'git clone' معمولی است، زیرا کلون معمولی محتوای LFS را با فیلتر smudge دریافت می‌کند که برای تک‌تک فایل‌ها در نسخه کاری به صورت جداگانه اجرا می‌شود. این رویکرد در مقایسه با حالت دسته‌ای (batch) و دانلودهای موازی که توسط 'git lfs pull' انجام می‌شود به مراتب ناکارآمدتر است.

تمامی گزینه‌های پشتیبانی‌شده توسط 'git clone'

-I <paths>, --include=<paths>

بخش شامل و استثنا کردن (INCLUDE AND EXCLUDE) را ببینید.

-X <paths>, --exclude=<paths>

بخش شامل و استثنا کردن (INCLUDE AND EXCLUDE) را ببینید.

--skip-repo

صرف‌نظر از نصب قلاب‌های سطح مخزن (.git/hooks) مورد نیاز LFS. به‌طور پیش‌فرض غیرفعال است.

می‌توانید Git LFS را به‌گونه‌ای پیکربندی کنید که اشیاء را تنها برای برآوردن ارجاعات در مسیرهای خاصی از مخزن دریافت کند، و/یا مسیرهای خاصی از مخزن را مستثنی کند تا زمان صرف‌شده برای دانلود مواردی که به آن‌ها نیاز ندارید کاهش یابد.

در پیکربندی گیت یا در یک فایل .lfsconfig، می‌توانید یک یا هر دو متغیر lfs.fetchinclude و lfs.fetchexclude را روی فهرستی از مسیرها که با کاما از هم جدا شده‌اند تنظیم کنید. اگر lfs.fetchinclude تعریف شود، اشیاء Git LFS تنها در صورتی دریافت می‌شوند که مسیر آن‌ها با یکی از موارد آن فهرست همخوانی داشته باشد؛ و اگر lfs.fetchexclude تعریف شود، اشیاء Git LFS فقط زمانی دریافت می‌شوند که مسیرشان با هیچ‌یک از موارد آن فهرست مطابقت نداشته باشد. تطبیق مسیرها با الگوهای عام (wildcard) مطابق با gitignore(5) انجام می‌شود.

توجه داشته باشید که استفاده از گزینه‌های خط فرمان -I و -X تنظیمات پیکربندی متناظر را بازنویسی (override) می‌کند. تنظیم هر یک از گزینه‌ها روی یک رشته خالی، مقدار آن را پاک می‌کند.

git-clone(1), git-lfs-pull(1), gitignore(5).

بخشی از مجموعه ابزارهای git-lfs(1).