読者です 読者をやめる 読者になる 読者になる

Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

git fetchで溜まった不要リポジトリ群は-pオプションで消える

git fetch --allでリモートブランチを引っ張ってくると、
そのうち不要ブランチ群のデススタックで引っ張りたい奴がどれだか分からなくなる愉快な事態が発生します。

そこで役立つのが-pオプション。
不要になった奴を消し去ってくれます。

$ git fetch -p
 x [deleted]         (none)     -> origin/f/a
 x [deleted]         (none)     -> origin/f/b
 x [deleted]         (none)     -> origin/f/c
 x [deleted]         (none)     -> origin/f/d
 x [deleted]         (none)     -> origin/fix/foo
 x [deleted]         (none)     -> origin/fix/bar
 x [deleted]         (none)     -> origin/ref/hoge
 x [deleted]         (none)     -> origin/ref/piyo

$ git branch -a
  develop
* f/e
  master
  remotes/origin/HEAD -> origin/master
  remotes/origin/develop
  remotes/origin/f/e
  remotes/origin/master

allと合わせて使う

横着して、--allオプションと合わせて使うこともできます。

$ git fetch --all -p
$ git fetch --all -p
Fetching origin
remote: Counting objects: 113, done.
remote: Compressing objects: 100% (35/35), done.
remote: Total 35 (delta 30), reused 0 (delta 0)
Unpacking objects: 100% (35/35), done.
From bitbucket.org:foo/bar
   aaaaaaa..bbbbbbb  develop    -> origin/develop
   ccccccc..ddddddd  f/e      -> origin/f/e
 x [deleted]         (none)     -> origin/f/a
 x [deleted]         (none)     -> origin/f/b
 x [deleted]         (none)     -> origin/f/c
 x [deleted]         (none)     -> origin/f/d
 x [deleted]         (none)     -> origin/fix/foo
 x [deleted]         (none)     -> origin/fix/bar
 x [deleted]         (none)     -> origin/ref/hoge
 x [deleted]         (none)     -> origin/ref/piyo

理解したら手癖として覚えておくなり、
エイリアスを貼ると幸せになれるかもしれません。

参考もと

編集

  • 2014/03/04 allオプション周りを補強