GitLabでGit LFSその2 (SSH Authentication for LFS)

これは、GitLab Advent Calendar 2016 の12/19日の記事です。

GitLabはまだガンガン使っているわけではなく、昨年参加したGitLab勉強回でLFS(Large File Storage)以来ですが、

GitLab/GitLab.com 勉強会行ってきた

ssh認証使えるようになったよというアナウンスが出ていたので、試してみました。

SSH Authentication for LFS

Git LFSに関しては以下を参照してください。今回は、sshの部分のみです 😀

Using Git LFS

先ずはKeyの登録

SSH Keys · Profile Settings · GitLab

こちらでSSH Keyを登録します。Readme · Ssh · Help · GitLabを参照。
例えばMacの場合は、

Mac:

pbcopy < ~/.ssh/id_rsa.pub

といった感じで詳しく載ってます。次に、SSH Keysに貼り付けて Add KeyすればOK 😀

id_rsa.pubを貼り付ける
id_rsa.pubを貼り付けて Add KeyすればOK 😀

早速試してみる

テストリポジトリを作って、今回もPSDを使って試してみます。

[code]ShuheinoMacBook-Pro:Desktop$ mkdir lfs-test-ssh &amp;&amp; cd $_
ShuheinoMacBook-Pro:lfs-test-ssh$ git init
Initialized empty Git repository in /Users/shuhei/Desktop/lfs-test-ssh/.git/
ShuheinoMacBook-Pro:lfs-test-ssh[master #]$ git remote add origin git@gitlab.com:marushu/ssh-authentication-for-lfs-test.git
ShuheinoMacBook-Pro:lfs-test-ssh[master #]$ git lfs init
WARNING: ‘git lfs init’ is deprecated. Use ‘git lfs install’ now.
Updated pre-push hook.
Git LFS initialized.
ShuheinoMacBook-Pro:lfs-test-ssh[master #]$ git lfs install
Updated pre-push hook.
Git LFS initialized.
ShuheinoMacBook-Pro:lfs-test-ssh[master #]$ git lfs track "*.psd"
Tracking *.psd
ShuheinoMacBook-Pro:lfs-test-ssh[master #]$ [/code]

…git lfs initじゃねーよ、今は’git lfs install’だよって怒られてますね…😅
では次にPSDを追加します。

PSDを追加

確認してみます。

[code]ShuheinoMacBook-Pro:lfs-test-ssh[master #]$ gs
On branch master

Initial commit

Untracked files:
(use "git add <file>…" to include in what will be committed)

.gitattributes
hibou_logo_web_cut.psd

nothing added to commit but untracked files present (use "git add" to track)[/code]

hibou_logo_web_cut.psdと.gitattributesが追加されてます。では追加してpushします。

[code]ShuheinoMacBook-Pro:lfs-test-ssh[master +]$ gs
On branch master

Initial commit

Changes to be committed:
(use "git rm –cached <file>…" to unstage)

new file: .gitattributes
new file: hibou_logo_web_cut.psd

ShuheinoMacBook-Pro:lfs-test-ssh[master +]$ git commit -m ‘add psd :)’
[master (root-commit) f668b4f] add psd 🙂
2 files changed, 4 insertions(+)
create mode 100644 .gitattributes
create mode 100644 hibou_logo_web_cut.psd
ShuheinoMacBook-Pro:lfs-test-ssh[master]$ git push origin master
Enter passphrase for key ‘/Users/ore/.ssh/id_rsa’:
Enter passphrase for key ‘/Users/ore/.ssh/id_rsa’:
Enter passphrase for key ‘/Users/ore/.ssh/id_rsa’:
Git LFS: (1 of 1 files) 159.15 KB / 159.15 KB
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 412 bytes | 0 bytes/s, done.
Total 4 (delta 0), reused 0 (delta 0)
To gitlab.com:marushu/ssh-authentication-for-lfs-test.git
* [new branch] master -> master[/code]

UsernameとPasswordを聞かれなくなってますね 😀
でも’Enter passphrase for key’がうるさいw

っとおもったら、ssh-addしていないことに気づきました ( ꒪⌓꒪)

[code]ssh-add -K /Users/shuhei/.ssh/id_rsa[/code]

…クリーンインストール後の環境構築は自動化しないとあれこれ忘れててだめですね…😅

気を取り直してpsdを編集後、push。

[code]gitShuheinoMacBook-Pro:lfs-test-ssh[master +]$ git commit -m ‘add ss text’
[master 1bab8db] add ss text
1 file changed, 2 insertions(+), 2 deletions(-)
ShuheinoMacBook-Pro:lfs-test-ssh[master]$ git push origin master
Git LFS: (1 of 1 files, 1 skipped) 169.19 KB / 169.19 KB, 165.34 KB skipped
Counting objects: 6, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 676 bytes | 0 bytes/s, done.
Total 6 (delta 2), reused 0 (delta 0)
To gitlab.com:marushu/ssh-authentication-for-lfs-test.git
d482ccb..1bab8db master -> master[/code]

ばっちり 😀✨️
素敵です。

明日は、ijojiさんです〜😀