タグ

ブックマーク / hokaccha.hatenablog.com (3)

  • git pullの詳細な挙動を追ってみる - hokaccha memo

    git push/pullは何気なく使ってるけど実はよくわかってなかった。ことのきっかけはこういう質問。 hogeというリモートブランチをローカルのhogeブランチにもってきたい hogeをローカルのmasterにはマージしたくない pullでなんかこんな感じでいけそう? $ git pull origin hoge:hogeでもこれは間違えで、なぜか今いるブランチ(master)にhogeがmergeされるし、期待してる動作じゃない。正解はこう。 $ git branch hoge origin/hogeもしくはチェックアウトも同時にするなら $ git checkout -b hoge origin/hogeこう。自分は普段後者のやり方でやってたけど、なんで上のはダメで下のが正解なのか説明できなかったのでちゃんと調べてみた。 入門Gitと実用Git、あとhelpを参考にした。 ブランチ

    git pullの詳細な挙動を追ってみる - hokaccha memo
    ama-ch
    ama-ch 2012/11/20
  • gitのブランチ名にスラッシュを含めるときの罠 - hokaccha memo

    ランチ名にはスラッシュを含めることができるわけだけど、ちょっとはまった。 $ git branch hoge $ git branch hoge/fuga error: unable to resolve reference refs/heads/hoge/fuga: Not a directory fatal: Failed to lock ref for update: Not a directoryという感じで、hogeブランチつくった後にhoge/fugaブランチをつくろうとするとエラる。なんでかというとhogeというブランチ名を作った時点で .git/refs/heads/hoge というファイルができていて、hoge/fuga ブランチをつくるためには .git/refs/heads/hoge/fuga というファイルをつくる必要があるので、すでに hoge があるよってこと

    gitのブランチ名にスラッシュを含めるときの罠 - hokaccha memo
    ama-ch
    ama-ch 2012/06/26
  • nodebrewのzsh補完書いた - hokaccha memo

    補完関数書いた。 https://github.com/hokaccha/nodebrew/blob/master/completions/zsh/_nodebrew これを$fpathがとおってるところに置くと動くはず。ホームディレクトリとかに補完関数を置きたいなら.zshrcに fpath=($HOME/.zsh_fun $fpath)とか書いて ~/.zsh_fun/_nodebrew ってなるように設置すればOK。 installのときの補完はリモートを見にいくので結果をキャッシュしたりしてる。 補完関数よくわからんくて見よう見まねで書いたので間違ってるところあったら教えてください。 bash補完のpull requestお待ちしております。

    nodebrewのzsh補完書いた - hokaccha memo
  • 1