| git-annex-addurl(1) | General Commands Manual | git-annex-addurl(1) |
نام (NAME)
git-annex-addurl - افزودن نشانیهای وب به انکس
خلاصه دستور (SYNOPSIS)
git annex addurl [url ...]
توضیحات (DESCRIPTION)
هر نشانی اینترنتی (url) را در فایل مخصوص خود بارگیری کرده و آن را به انکس اضافه میکند.
هنگامی که yt-dlp نصب باشد، میتواند برای بررسی ویدیوی جاسازیشده در یک صفحهٔ وب در نشانی موردنظر استفاده شود و به جای خود صفحه، آن ویدیو به انکس اضافه گردد. (البته این ویژگی به طور پیشفرض به دلیل خطرات احتمالی امنیتی غیرفعال است. برای جزئیات به مستندات annex.security.allowed-ip-addresses در git-annex(1) مراجعه کنید.)
ریموتهای ویژه میتوانند نحوهٔ مدیریت خاصی را برای نشانیهای وب مشخصی اضافه کنند. به عنوان مثال، ریموتهای ویژهٔ bittorrent باعث میشوند نشانیهای فایلهای تورنت (از جمله پیوندهای مگنت) محتوای تورنت را با استفاده از aria2c بارگیری کنند.
به طور معمول نام فایل بر اساس نشانی کامل وب ساخته میشود، بنابراین چیزی شبیه به "www.example.com_dir_subdir_bigfile" خواهد بود. در برخی موارد، addurl میتواند بر اساس اطلاعات دیگر نام فایل بهتری ایجاد کند. همچنین میتوان از گزینههای مختلف برای دستیابی به نامهای فایل مناسبتر استفاده کرد.
گزینهها (OPTIONS)
- --fast
- جلوگیری از بارگیری فوری نشانی وب. نشانی وب همچنان (از طریق درخواست HEAD) بررسی میشود تا وجود آن تأیید شده و در صورت امکان اندازهٔ آن دریافت شود.
- --relaxed
- از بارگیری فوری نشانی وب و همچنین ذخیره کردن اندازهٔ محتوای نشانی خودداری میکند. این امر باعث میشود git-annex در آینده هر محتوایی را که در آن نشانی موجود باشد بپذیرد.
- این سریعترین گزینه است، اما همچنان باید به شبکه دسترسی داشته باشد تا بررسی کند آیا نشانی حاوی رسانهٔ جاسازیشده است یا خیر. هنگام افزودن تعداد زیادی نشانی، استفاده از --relaxed --raw بسیار سریعتر خواهد بود.
- --verifiable -V
- میتوان از این گزینه همراه با گزینههای --fast یا --relaxed استفاده کرد. این کار با امکانپذیر ساختن اعتبارسنجی محتوا از طریق چکسام در هنگام انتقال بین مخازن git-annex و همچنین توسط دستوراتی مانند git-annex fsck، امنیت فایل پیوستشده حاصل را بهبود میبخشد.
- هنگام استفاده همراه با --relaxed، محتوا از ریموت ویژهٔ وب همیشه پذیرفته میشود، حتی اگر تغییر کرده باشد، و چکسام آن برای اعتبارسنجیهای بعدی ثبت میگردد.
- هنگام استفاده همراه با --fast، چکسام در اولین بارگیری محتوا از ریموت ویژهٔ وب ثبت میشود. پس از ثبت چکسام، بارگیریهای بعدی از ریموت ویژهٔ وب باید همان چکسام را داشته باشند.
- اگر addurl قبلاً بدون این گزینه استفاده شده باشد، فایل اضافهشده را میتوان با انتقال به بکاند VURL به حالت قابلاعتبارسنجی تبدیل کرد. برای مثال: git-annex migrate foo --backend=VURL
- --raw
- جلوگیری از مدیریت ویژهٔ نشانیهای وب توسط yt-dlp، بیتتورنت و سایر ریموتهای ویژه. برای نمونه، این گزینه باعث میشود addurl خودِ فایل .torrent را بارگیری کند و نه محتوایی را که به آن اشاره دارد.
- --no-raw
- الزام بارگیری محتوایی که نشانی وب به آن اشاره دارد از طریق yt-dlp یا یک ریموت ویژه، به جای محتوای خام نشانی. در صورتی که این کار ممکن نباشد، عملیات افزودن با شکست مواجه میشود.
- --raw-except=remote
- جلوگیری از مدیریت ویژهٔ نشانیهای وب توسط تمام ریموتهای ویژه به جز ریموت مشخصشده. برای مجاز کردن مدیریت ویژه تنها توسط yt-dlp، از --raw-except=web استفاده کنید.
- --file=name
- همراه با نام فایلی که هنوز وجود ندارد استفاده میشود تا فایل جدیدی با نام مشخصشده و محتوای بارگیریشده از نشانی وب اضافه کند.
- اگر فایل از قبل وجود داشته باشد، addurl ثبت میکند که این فایل میتواند از نشانیهای مشخصشده بارگیری شود.
- --preserve-filename
- هنگامی که سرور وب (یا تورنت و غیره) نام فایلی را ارائه میدهد، از همان نام بدون تغییر استفاده میکند و از پاکسازی کاراکترهای نامعمول، کوتاه کردن طول آن یا هرگونه تغییر دیگر خودداری مینماید.
- دستور git-annex همچنان نام فایل را از نظر امنیت بررسی میکند و در صورت وجود مشکل امنیتی مانند پیمایش مسیر (path traversal) یا کاراکترهای کنترلی، از افزودن آن خودداری خواهد کرد.
- --pathdepth=N
- به جای اینکه نام فایل بر اساس کل نشانی ساخته شود، این گزینه مسیری را میسازد که از عمق مشخصشده در مسیر نشانی وب آغاز میشود.
- برای مثال، افزودن نشانی http://www.example.com/dir/subdir/bigfile با --pathdepth=1 نام "dir/subdir/bigfile" را استفاده میکند، در حالی که --pathdepth=3 از "bigfile" استفاده خواهد کرد.
- این مقدار میتواند منفی نیز باشد؛ --pathdepth=-2 از دو بخش آخر نشانی وب استفاده میکند.
- --prefix=foo --suffix=bar
- برای تنظیم و سفارشیسازی نام فایلهای ایجادشده توسط addurl استفاده میشود. برای مثال، --suffix=.mp3 میتواند برای افزودن پسوند به فایل به کار رود.
- --no-check-gitignore
- به طور پیشفرض، قوانین gitignore رعایت میشوند و دستور از بارگیری نشانی وب در فایلی که نادیده گرفته میشود خودداری میکند. این گزینه باعث میشود چنین فایلهایی علیرغم قوانین نادیدهگرفتن اضافه شوند.
- --jobs=N -JN
- فعالسازی بارگیری موازی در هنگام افزودن چندین نشانی وب. برای مثال: -J4
- تنظیم این گزینه روی "cpus" به ازای هر هستهٔ پردازنده یک کار را اجرا میکند.
- --batch
- حالت دستهای (batch) را فعال میکند که در آن خطوط حاوی نشانیهای وب برای افزودن، از ورودی استاندارد (stdin) خوانده میشوند.
- -z
- باعث میشود ورودی --batch به جای خطوط جدید معمول، با نویسهٔ تهی (null) از هم جدا شوند.
- --with-files
- هنگامی که حالت دستهای فعال است، خطوطی به قالب "$url $file" را تجزیه میکند.
- این کار نشانی وب مشخصشده را به فایل تعیینشده اضافه میکند و در صورتی که فایل هنوز وجود نداشته باشد، محتوای آن را بارگیری میکند؛ دقیقاً مشابه با git annex addurl $url --file $file
- --json
- فعالسازی خروجی JSON. این گزینه برای تجزیه توسط برنامههایی که از git-annex استفاده میکنند در نظر گرفته شده است. هر خط از خروجی یک شیء JSON است.
- --json-progress
- گنجاندن اشیای وضعیت پیشرفت در خروجی JSON.
- --json-error-messages
- پیامهایی که به طور معمول در خطای استاندارد نمایش داده میشوند، در عوض درون JSON گنجانده میشوند.
- --backend
- مشخص میکند که از کدام بکاند کلید-مقدار استفاده شود.
- همچنین میتوان از git-annex-common-options(1) نیز استفاده کرد.
هشدارها (CAVEATS)
اگر annex.largefiles پیکربندی شده باشد و با فایلی مطابقت نداشته باشد، git annex addurl فایل غیربزرگ را مستقیماً به مخزن گیت اضافه میکند، به جای اینکه آن را به انکس اضافه کند. با این حال، هنگام استفاده از --fast یا --relaxed این کار انجام نمیشود.
همچنین ببینید (SEE ALSO)
git-annex(1)
git-annex-rmurl(1)
git-annex-registerurl(1)
git-annex-importfeed(1)
نویسنده (AUTHOR)
Joey Hess <id@joeyh.name>