Subscribed unsubscribe Subscribe Subscribe

既存の不可視ディレクトリをGitHub for Macで管理する

github

GitHub for Mac が公開されましたね。ローカルのリポジトリとgithubで公開しているリポジトリと簡単に連携できて、良い感じです。
ふつうのgit管理しているディレクトリならドラッグアンドドロップするなり、GitHub for MacのPreferenceからScanするなりして表示させられます。GUIツールでヒストリを見れたりするのはやっぱりいいですよね*1
ところでローカルに ~/.vim というgitリポジトリがあります。リモートは github/marutanm/.vim と対応しています。これをGitHub for MacのMy Repositoriesに表示してやりたいわけですが、ドットではじまる不可視ディレクトリなのでどうしたものか。

方針1 不可視ディレクトリを可視化しちゃう

Finderの設定を変えます。調べればどこかに手順書いていると思います。Finderから見えるようになれば、あとはドラッグアンドドロップするなりなんなり。
なんか今さらFinderの設定を変えるのもなー。却下。

方針2 改めてcloneする

cloneして、既存のものと置き換える
ただし、ローカルにだけあるブランチなんかは消えちゃうし、ignoreしているものも消えちゃう。
今回だとvundleで管理しているプラグインが入っている bundle/ 配下をignoreしちゃっているので、この手法はやりたくない。

方針3 githubコマンドを入れる

GitHub for Macからgithubコマンドを入れることができます。これはGitHub for Macの起動コマンドであり、git管理下で実行すればそのリポジトリをGitHub for Macで認識してくれます。
というわけで今回の場合、 ~/.vim から実行してやれば完了。
ちなみにこのgithubコマンドは /usr/local/bin に入ります。homebrewで入るコマンドと同じところですね。

まとめ

というわけで、ローカルに散乱しているgitリポジトリをガンガンGitHub for Macに突っ込んで一覧することができます。いいですね。
しかも、そのリポジトリにリモートリポジトリが既に設定してあればそれを認識してくれるし、それがgithubリポジトリであれば便利にsyncできますし。
ちなみに、syncする場合、ブランチの扱いってどうなるんですかね?ローカルの全branchがpushされたりするんですかね?ためしてみないと。

関連
Announcing GitHub for Mac · GitHub

*1:ちなみに今までは[http://gitx.frim.nl/:title=GitX]を使っていました。リポジトリツリーの表示とかけっこう良いですよ