Bug in filter-branch example for moving into a subdirectory
From: Jesse Keating <hidden>
Date: 2016-06-15 22:52:36
From: Jesse Keating <hidden>
Date: 2016-06-15 22:52:36
I ran into a bug with the example in the man page for filter-branch, for moving everything into a subdir:
git filter-branch --index-filter \
'git ls-files -s | sed "s-\t\"*-&newsubdir/-" |
GIT_INDEX_FILE=$GIT_INDEX_FILE.new \
git update-index --index-info &&
mv "$GIT_INDEX_FILE.new" "$GIT_INDEX_FILE"' HEAD
The problem seems to be when a commit happens that is just a file removal with no added file. In those cases, git ls-files doesn't output anything. Trying to throw a -d option in doesn't seem to improve matters.
So the problem is that if a commit is just file removals, this example will actually crash. Unfortunately I don't have a suggested solution at the moment.
--
Jesse Keating
Fedora -- Freedom² is a feature!
identi.ca: http://identi.ca/jkeating