Best way to specify all local branches and all remote branches.
- From
- Paul Gardiner <osronline@glidos.net>
- Date
- Feb 11, 2008, 18:51 UTC
- Message-ID
- <47B09921.2070109@glidos.net>
New to git, and often finding it hard to specify the correct refs for a command. Here's an example where I was converting all the files in all the commits from unix line endings to DOS line endings. You can see I've ended up using cd and ls. I'm sure there must be a better way.
$ cd /home/public/tmp/git/
$ yes |rm -r vdos32
$ git clone /export/git/vdos32.git vdos32
$ cd vdos32/
$ for f in `(cd /export/git/vdos32.git/refs/heads; ls)|sed -e
'/master/d' -e '/origin/d'`; do git fetch origin $f:$f; done
$ git-filter-branch --tag-name-filter cat --tree-filter 'find . -type f
! -name \*.gif ! -name \*.ico|xargs unix2dos -q' `(cd
.git/refs/heads;ls)`With git-filter-branch, I'm surprised I can't use --all. The docs suggest that A --not B is permitted. I've also seen refs/heads/* used in the docs but never managed to get it to work. Most greatful for any advice.
P.