| GIT-LFS-FETCH(1) | GIT-LFS-FETCH(1) |
نام (NAME)
git-lfs-fetch - بارگیری تمام فایلهای Git LFS برای یک ارجاع (ref) مشخص
خلاصه دستور (SYNOPSIS)
git lfs fetch [options] [<remote> [<ref>...]] git lfs fetch [options] <remote> --stdin
توضیحات (DESCRIPTION)
اشیای Git LFS را در ارجاعهای (refs) مشخصشده از مخزن دوردست (remote) تعیینشده بارگیری میکند. برای بررسی آنچه در صورت عدم تعیین رخ میدهد، بخشهای «مخزن دوردست پیشفرض (DEFAULT REMOTE)» و «ارجاعهای پیشفرض (DEFAULT REFS)» را ببینید.
این دستور نسخهٔ کاری را بهروزرسانی نمیکند.
گزینهها (OPTIONS)
-I <paths>, --include=<paths>
-X <paths>, --exclude=<paths>
-r, --recent
-a, --all
--stdin
-p, --prune
--refetch
-d, --dry-run
-j, --json
شمول و عدم شمول (INCLUDE AND EXCLUDE)
میتوانید Git LFS را بهگونهای پیکربندی کنید که فقط اشیا را برای برآورده کردن ارجاعها در مسیرهای خاصی از مخزن واکشی کند، و/یا مسیرهای خاصی از مخزن را مستثنی کنید، تا مدت زمانی که صرف بارگیری مواردی میکنید که استفاده نمیکنید کاهش یابد.
در پیکربندی گیت خود یا در یک فایل .lfsconfig، میتوانید یکی یا هر دوی lfs.fetchinclude و lfs.fetchexclude را با فهرستهایی از مسیرها که با کاما از هم جدا شدهاند مقداردهی کنید. اگر lfs.fetchinclude تعریف شده باشد، اشیای Git LFS تنها در صورتی واکشی میشوند که مسیر آنها با یکی از مسیرهای آن فهرست مطابقت داشته باشد، و اگر lfs.fetchexclude تعریف شده باشد، اشیای Git LFS تنها در صورتی واکشی خواهند شد که مسیر آنها با هیچیک از مسیرهای آن فهرست مطابقت نداشته باشد. تطبیق مسیرها با استفاده از الگوهای وایلدکارد طبق gitignore(5) انجام میشود.
توجه داشته باشید که استفاده از گزینههای خط فرمان -I و -X بر تنظیمات پیکربندی مربوطه اولویت دارد. تنظیم هر یک از گزینهها با یک رشتهٔ خالی مقدار آن را پاک میکند.
مثالها (Examples)
این تنظیم فقط اشیای ارجاع داده شده در مسیرهای پوشهٔ textures و فایلهای با نام *foo در پوشهٔ images را واکشی میکند.
فقط فایلهای JPG/PNG/TGA در هر جای مخزن که باشند واکشی میشوند.
هیچ یک از اشیای LFS ارجاع داده شده در پوشهٔ media/reallybigfiles را واکشی نمیکند، اما همهٔ موارد دیگر را واکشی میکند.
git config lfs.fetchexclude "media/excessive"
فقط اشیای LFS موجود در پوشهٔ 'media' را واکشی میکند، اما اشیای موجود در یکی از زیرپوشههای آن را مستثنی میسازد.
مخزن دوردست پیشفرض (DEFAULT REMOTE)
بدون آرگومان، دستور fetch از مخزن دوردست پیشفرض بارگیری میکند. مخزن دوردست پیشفرض همانند git fetch است، یعنی در درجهٔ اول بر اساس شاخهٔ دوردستی که ردیابی میکنید، یا در غیر این صورت origin خواهد بود.
ارجاعهای پیشفرض (DEFAULT REFS)
اگر هیچ ارجاعی به عنوان آرگومان داده نشود، از ارجاع فعلی که تحویل گرفته شده (checked out) استفاده میشود. علاوه بر این، در صورت فعال بودن، ارجاعها و کامیتهای اخیراً تغییریافته نیز گنجانده میشوند. برای جزئیات به «تغییرات اخیر (RECENT CHANGES)» مراجعه کنید.
تغییرات اخیر (RECENT CHANGES)
اگر گزینهٔ --recent مشخص شده باشد، یا اگر گزینهٔ gitconfig به نام lfs.fetchrecentalways برابر با true باشد، آنگاه پس از واکشی ارجاع فعلی (یا موارد موجود در آرگومانها)، برای تغییرات «اخیر» نیز جستجو میکنیم تا اشیای آنها واکشی شوند، تا تحویل گرفتن یا ایجاد diff برای آن کامیتها بدون تحمیل بارگیریهای بیشتر راحتتر باشد.
اینکه چه تغییراتی «اخیر» محسوب میشوند بر اساس تعدادی از گزینههای gitconfig تعیین میگردد:
lfs.fetchrecentrefsdays
lfs.fetchrecentremoterefs
lfs.fetchrecentcommitsdays
lfs.fetchrecentalways
مثالها (EXAMPLES)
git lfs fetch
git lfs fetch --recent
git lfs fetch upstream
git lfs fetch --all origin main develop
git lfs fetch origin mybranch
git lfs fetch origin main mybranch e445b45c1c9c6282614f201b62778e4c0688b5c8
همچنین ببینید (SEE ALSO)
git-lfs-checkout(1), git-lfs-pull(1), git-lfs-prune(1), gitconfig(5).
بخشی از مجموعهٔ git-lfs(1).