ghqというローカルリポジトリを一元的に
管理するツールをインストールしてみました。こちらのツールを使うとgolang
と同じようなディレクトリ構成で
リポジトリを管理できるようになります。
また今回はこちらの記事を参考に(というかまんま同じに)、 リポジトリ(ソース)を管理するようにしてみました。
golangのディレクトリ構成
まずはGOPATH
を$HOME
に設定し、以下のようなディレクトリ構成にします。
.zshrc
## golang
export GOPATH=$HOME
export PATH=$PATH:$GOPATH/bin
$HOME
配下の構成
.
├── bin
├── pkg
└── src
└── github.com
├── clone
├── codegangsta
├── mattn
└── peco
これでgolang
のリポジトリ(ソース)は、src
配下に作成されます。
また今回はghq
を使ってインストール(clone)するgolang
以外のリポジトリもsrc
配下にインストールするよう設定します。
ghqのインストール
$ go get github.com/motemen/ghq
$HOME/.gitconfig
にghq
を使ってインストールするディレクトリ先を指定します。
[ghq]
root = ~/src
これでghq
コマンドを使って、インストールできるようになります。
$ ghq get https://github.com/zsh-users/zsh-syntax-highlighting.git
src
ディレクトリ配下にインストールされます。
src
└── github.com
└── zsh-users
└── zsh-syntax-highlighting
ghqでインストールしたリポジトリの一覧を表示し、移動するスクリプト
# peco-src
# (http://blog.kentarok.org/entry/2014/06/03/135300)
function peco-src () {
local selected_dir=$(ghq list --full-path | peco --query "$LBUFFER")
if [ -n "$selected_dir" ]; then
BUFFER="cd ${selected_dir}"
zle accept-line
fi
zle clear-screen
}
zle -N peco-src
bindkey '^S' peco-src
まとめ
今までの自己流から、ずいぶん分かりやすくなりました。
当面この方法で管理をしていこうと思います。
お疲れ様でした。