新しいリポジトリからgit-annex特殊リモートアクセス

新しいリポジトリからgit-annex特殊リモートアクセス

私はそれを使用していますgit-annexversion 7.20190129マイコンピュータに提供されているように、大容量Debian Stable (Buster)ファイルをバージョン管理下に置き、複数のコンピュータとドライブに展開できます。少なくとも1つの「実際の」リポジトリがgit-annexある限り(そうではありません)。special remote)。

git annex私のローカルコンピュータで追加のストレージを1つだけ使用したいですspecial remotes(例:bup special remoteまたはrsync special remoteDebian Stableまたは一度着地したらborg special remote)。

私のワークフローは次のとおりです。

cd /path/to/my/local/folder
git init
git annex init
git annex add myawesomefile
git commit -m 'this works on my local repository'
git annex initremote mybupbackuprepo type=bup encryption=none buprepo=/path/to/my/special/remote/location
git annex sync
git annex copy files --to mybupbackuprepo

bup special remoteこれにより、リンクされたリポジトリのように私のリポジトリを使用できます。

しかし、私は最初のローカルストレージを使用せずに私のストレージにアクセスしたいと思いますbup(たとえば、ローカルコンピュータがクラッシュした場合など)。私が知る限り(次から)official guide、次が動作するはずです。

cd /path/to/new/folder/to/extract/the/backup
git init
git annex init
git annex initremote mybupbackuprepo type=bup encryption=none buprepo=/path/to/my/special/remote
git annex enableremote mybupbackuprepo
git annex sync

しかし、まだファイルを見ることができず(一部の破損したシンボリックリンクも含む)、git annex sync --contentorを使用するとデータを取得できないようですgit annex get myawesomefile

どんなアイデアがありますか?私は何を見逃していますか?

ベストアンサー1

特別なリモコンは、gitリポジトリではなくファイルデータのみを保存します。図書館の地下室のように考えてみてください。図書館は本を保管するための余分なスペースを作ることができますが、地下室の後ろに図書館を建てたい場合は、インデックスがなく、どの本がどのカタログにあるのかわかりません。そして本はありません。管理者が書籍を見つけるのに役立ちます。

したがって、実際にコンテンツに関するすべての情報を含むマスターブランチをコピーするには、別のgitリポジトリが必要です。

ストレージを直接ホストする状況では、特別なリモートデバイスは必要ありません。ソースとして使用する一般的な(通常はベアである必要はありません)、gitリポジトリも大容量ファイルを保存でき、後で使用できます。決済など

$ git clone ssh://host/path/repo
$ cd repo
$ git annex init
$ git annex get --from origin

(これは--from origin説明のためのものです。書かないと、gitannexも何をすべきかわかります。)

ほとんどの場合、特別なリモコンは必要ありません。特別なリモコンを使用する理由は次のとおりです。

  • (小さいが頻繁に必要な)gitアクセスをデータアクセス(多くのデータ)から分離したいので、データホストはフルシェルアクセスではなくrsync(またはwebdavまたはs3または他のプロトコル)アクセスのみを提供します。
  • gitホストはデフォルトのgitだけを提供し、git-annexがインストールされていません(例:GitLab)。これには追加のデータホストが必要です。
  • バックエンドで必要な特殊属性(暗号化を使用しない場合にのみ機能するストレージ間の重複排除)

ほとんどの場合(あなたと同じように)通常のgitリモートを使用してデータのコピーを添付するだけで、設定が面倒で最も重要であり、とにかくデータを復元するには1つが必要です。

おすすめ記事