git-annex-initremote(1) General Commands Manual git-annex-initremote(1)

git-annex-initremote - مقداردهی اولیه یک مخزن ویژه دوردست

git annex initremote name type=value [param=value ...]

یک مخزن ویژه (غیر git) جدید ایجاد کرده و آن را به .git/config اضافه می‌کند.

مثالی از مخزن دوردست Amazon S3:

git annex initremote mys3 type=S3 encryption=hybrid keyid=me@example.com datacenter=EU

انواع بسیار متفاوتی از مخازن ویژه توسط git-annex پشتیبانی می‌شوند. برای مشاهده فهرست و جزئیات، ببینید: https://git-annex.branchable.com/special_remotes

پیکربندی مخزن دوردست با پارامترهای ارسالی به این دستور مشخص می‌شود. انواع مختلف مخازن ویژه به مقادیر پیکربندی متفاوتی نیاز دارند، بنابراین برای جزئیات به مستندات مخزن ویژه مراجعه کنید. این دستور برای هر پارامتر لازمی که وارد نکرده باشید از شما سؤال خواهد کرد؛ همچنین می‌توانید --whatelse را برای مشاهده پارامترهای اضافی ارسال کنید.

چند پارامتر که توسط همه مخازن ویژه پشتیبانی می‌شوند در بخش بعدی در زیر مستند شده‌اند.

هنگامی که یک مخزن ویژه یک‌بار با این دستور مقداردهی اولیه شد، سایر کلون‌های مخزن نیز می‌توانند با استفاده از git annex enableremote برای دسترسی به آن تنظیم شوند.

نامی که برای مخزن دوردست ارائه می‌دهید نمی‌تواند نامی باشد که قبلاً برای هر مخزن ویژه دیگری استفاده شده است، چرا که git-annex enableremote از نام برای شناسایی این‌که کدام مخزن ویژه فعال شود استفاده می‌کند. اگر یک مخزن ویژه قدیمی که دیگر استفاده نمی‌شود نام مورد نظر شما را گرفته است، ممکن است بخواهید از git annex renameremote استفاده کنید.

این گزینه مخزن دوردست را با یک نشانی "annex::" پیکربندی می‌کند، که به git اجازه می‌دهد با استفاده از git-remote-annex به آن push و از آن pull کند.
پارامترهای پیکربندی اضافی را که می‌توانید مشخص کنید، توصیف می‌کند.
به عنوان مثال، اگر می‌دانید که یک مخزن دوردست S3 می‌خواهید، اما نحوه پیکربندی آن را فراموش کرده‌اید:
git annex initremote mys3 type=S3 --whatelse
برای دریافت یک فهرست ماشین‌خوان از پارامترها، از این گزینه به همراه --json استفاده کنید.
هنگام مقداردهی اولیه مخزن دوردستی که از رمزنگاری استفاده می‌کند، یک کلید رمزنگاری ایجاد می‌شود. این امر به آنتروپی کافی نیاز دارد. اگر به نظر می‌رسد initremote هنگام تولید کلید متوقف شده یا زمان زیادی می‌برد، ممکن است بخواهید آن را با Ctrl-c متوقف کرده و مجدداً با --fast اجرا کنید، که باعث می‌شود از یک منبع تصادفی با کیفیت پایین‌تر استفاده کند (یعنی /dev/urandom به جای /dev/random).
زمانی از این گزینه استفاده کنید که مخزن ویژه دوردست جدید از همان فضای ذخیره‌سازی زیربنایی مخزن دوردست دیگری استفاده می‌کند. این کار باعث می‌شود مخزن ویژه جدید همان uuid مخزن دوردست مشخص‌شده را داشته باشد و بتوان از هر یک از آن‌ها برای دسترسی به محتوای یکسان استفاده کرد.
مقدار remote می‌تواند نام یک ریموت git، یا توضیحات یا uuid هر مخزن git-annex باشد.
هنگام استفاده از این گزینه، مخزن دوردست جدید تنظیمات رمزنگاری مخزن موجود را به ارث می‌برد، بنابراین نباید هیچ پارامتر رمزنگاری را مشخص کنید. هیچ پیکربندی دیگری از مخزن موجود به ارث برده نمی‌شود.
این ویژگی تنها در صورتی کار خواهد کرد که هر دو مخزن دوردست از فضای ذخیره‌سازی زیربنایی به روش‌های سازگار استفاده کنند. برای اطلاعات بیشتر در مورد سازگاری‌های شناخته‌شده به این صفحه مراجعه کنید: http://git-annex.branchable.com/tips/multiple_remotes_accessing_the_same_data_store
از ثبت اطلاعات مربوط به مخزن ویژه در شاخه git-annex خودداری می‌کند. مخزن ویژه فقط از همان مخزنی که در آن ایجاد شده قابل استفاده خواهد بود.
خروجی JSON را فعال می‌کند. این خروجی برای تجزیه توسط برنامه‌هایی که از git-annex استفاده می‌کنند در نظر گرفته شده است.
پیام‌هایی که به‌طور معمول به خروجی خطای استاندارد ارسال می‌شوند، در عوض در JSON گنجانده می‌شوند.
همچنین گزینه‌های git-annex-common-options(1) نیز قابل استفاده هستند.

تقریباً تمام مخازن ویژه از رمزنگاری پشتیبانی می‌کنند. شما باید مشخص کنید که در صورت وجود، از چه نوع رمزنگاری استفاده شود.
اگر هیچ نوع رمزنگاری نمی‌خواهید، از encryption=none استفاده کنید.
برای رمزنگاری روی یک کلید GPG، از encryption=hybrid keyid=$keyid ... استفاده کرده و شناسه کلید GPG (یا یک آدرس ایمیل مرتبط با کلید GPG) را وارد کنید.
برای جزئیات بیشتر در مورد این مورد و سایر تنظیمات رمزنگاری، به پیوند زیر یا --whatelse مراجعه کنید: https://git-annex.branchable.com/encryption
برای جلوگیری از نیاز به اجرای git annex enableremote، می‌توانید مقدار "autoenable=true" را ارسال کنید. سپس هنگامی که git-annex در یک کلون جدید اجرا می‌شود، تلاش خواهد کرد مخزن ویژه دوردست را فعال کند. البته، این قابلیت زمانی به بهترین شکل کار می‌کند که مخزن ویژه دوردست برای فعال شدن نیازی به انجام کار خاصی نداشته باشد.
این پارامتر را برای نادیده گرفتن هزینه (cost) پیش‌فرض مخزن ویژه دوردست مشخص کنید. این پیکربندی می‌تواند توسط تنظیمات محلی git نادیده گرفته شود، مانند remote.name.annex-cost.
به‌طور معمول، git-annex initremote یک UUID جدید برای مخزن ویژه دوردست جدید ایجاد می‌کند. در صورت تمایل، می‌توانید با ارسال پارامتر uuid=whatever یک UUID برای استفاده آن تعیین کنید. این کار می‌تواند در برخی شرایط غیرمعمول مفید باشد، اما اگر شک دارید، این کار را انجام ندهید.

git-annex(1)

git-annex-enableremote(1)

git-annex-configremote(1)

git-annex-renameremote(1)

Joey Hess <id@joeyh.name>