この章ではghqの基本的な使い方を説明します。この章の内容だけで、普段遣いには困らないレベルになるでしょう。
ghqのメイン機能は「リポジトリを取得する」ことと「取得したリポジトリを一覧する」ことだけです。
ghq getを使ってghq自体のソースコードを以下のように取得できます。
% ghq get motemen/ghqghq listで手元のリポジトリ一覧を{{HOST}}/{{PATH}}形式で得られます。
% ghq list
github.com/motemen/ghq--full-pathオプションを付与すれば、フルパスの一覧を得られます。
% ghq list --full-path
/Users/Songmu/ghq/github.com/motemen/ghq上記の例では、/Users/Songmu/ghq 配下にソースコードが配置されています。この配置先はghq rootコマンドで表示できます。
% ghq root
/Users/Songmu/ghqこの配置先はデフォルトでは$HOME/ghqになっています。もちろん設定で変更可能です。
ここまでの説明では、ghqの便利さがピンときていないかもしれません。しかしその便利さが分かれば、あなたはもうgit cloneすることはなくなり、すべてghq getでリポジトリを取得するようになるでしょう。
ghqの対象はGit及びGitHubに限りません。GitやGitHubに対してより便利に作られていますが、GitHub以外の任意のリポジトリホストからソースコードを取得できますし、以下のVCSをサポートしています。
- Git (git)
- Mercurial (hg)
- Subversion (svn)
- git-svn (git-svn)
- Bazaar (bzr)
- Fossil (fossil)
- Darcs (darcs)
パブリックもプライベートも、仕事用も趣味コードも、Gitもそれ以外も、すべてghqで取得・管理することをおすすめします。
以降の章でghqの詳細な説明をしていきます。コマンドごとに網羅的に説明するというよりかは、主なユースケース毎に説明します。コマンドラインオプションを説明に取り上げる場合、オプション名はlong optionで統一しますが、short optionが用意されているものもあります。それについてはコマンドラインヘルプ(ghq -h)を参照してください。