何回か遭遇したのでメモしておく。
[遭遇した問題と発生したエラー]
利用している環境は以下の通り。
OS:Windows 10
git:2.34.0.windows.1
リポジトリはクラウド版Bitbucketでホスティングしており、Git LFSを有効化し、pdfファイルなどを保管している。
エクスプローラー上でGit管理されているpdfファイルを見ると、ファイルサイズが1kbとなっており、中身は次のようになっていた。
version https://git-lfs.github.com/spec/v1 oid sha256:(ファイルのハッシュ値) size XXXXXX
git lfsで管理しているファイルが取得できていないだけかな、と思い、git lfs pull
したところ、次のエラーが発生した。
> git lfs pull batch request: git@bitbucket.org: Permission denied (publickey).: exit status 255 error: failed to fetch some objects from 'https://bitbucket.org/myteam/myrepository.git/info/lfs'
[対処法]
SSHキーの設定などを見直したが、LFS管理されていない通常のソースコードなどは問題なくgit pullできており、問題ないと判断した。こちらの記事にある、秘密鍵がロードされていない、には該当しなさそうだった(ssh-add -l -E sha256
コマンドで確認はしていないが...)。
色々ググった結果、こちらのissueのコメントが役に立った。
start-ssh-agent
コマンドを実行してからgit lfs pull
を実行したら解決した、とある。その通りに実行したところ、問題なくpdfファイルを取得しファイルの中身を閲覧できた。
> start-ssh-agent Removing old ssh-agent sockets Starting ssh-agent: done Enter passphrase for /c/Users/kdnakt/.ssh/id_ed25519: Identity added: /c/Users/kdnakt/.ssh/id_ed25519 (メールアドレス) Microsoft Windows [Version 10.0.19043.1586] (c) Microsoft Corporation. All rights reserved. > git lfs pull Downloading LFS objects: 100% (16/16), 158 MB | 10 MB/s