Carpe Diem

備忘録

Git

SSHにYubikeyを使う

背景 OpenSSH 8.2からU2F/FIDO2デバイスを用いたハードウェア認証に対応しており、仮に秘密鍵が漏洩しても鍵の生成時に利用したデバイス(Yubikeyなど)がないとsshできなくなるというセキュアな対応が実現できます。 以前はOpenPGPに委譲させたり、PIVで対…

fatal: could not read Username for 'https://github.com': terminal prompts disabledが出たら

概要 CIツールでプライベートリポジトリをgo getしようとするとたまに遭遇する fatal: could not read Username for 'https://github.com': terminal prompts disabled の対応方法をまとめます。 原因 go getはデフォルトだとHTTPSで通信しようとしますが、…

MacでのGithubリポジトリのcloneを自動化

背景 パソコンを新調した時に大変なのが ツールやアプリのインストール Githubのリポジトリのclone です。 前者に関してはhomebrewが提供しているbrew bundleである程度対応できます。 後者でghqはdump, restore的な機能ってあるのかな?と思って探したのが…

GitHubを使った開発であると便利なツール

概要 GitHubを使った開発で使ってるツールを紹介していきます。 どれもあると無いとでは開発スピードが大きく変わります。 Fork GUIのGitクライアントです。 git-fork.com 以前はSourcetreeを使っていましたが管理するファイルが増えると非常に重くなったの…

GPGでgitのcommitに署名する

概要 GitHubではMergeコミットなどで といったマークを見ます。これは署名されたcommitを示すものなのですが、 なぜ必要なのか どうやったら署名できるのか を今回説明します。 環境 macOS 10.14.5 Mojave gpg 2.2.10 なぜ署名が必要か? gitのコミットは co…

Private Repository で go get

問題 作業リポジトリで依存パッケージを全部アップデートしようと以下のコマンドを実行したところ $ go get -u ./... 以下のようなエラーが出ました。 package github.com/hoge/fuga/package: /home/vagrant/go/src/github.com/hoge/fuga is from git@github…