…FS volumes Signed-off-by: Steve Purcell <firstname.lastname@example.org>
I had an issue with darcs repositories which would have a versioned boring file, specified with darcs setpref. This file didn't exclude git, so when darcs-to-git processed that commit, the working directory would no longer be clean (as it would stop ignoring the .git directory). This patch writes those ignores to the global ignore file, which is always consulted. This patch only adds the patterns that don't already exist, but doesn't restore the old state on completion.
This would stop git from picking up additions that would be ignored by a global gitignore file, leaving the repo in a confused state (the darcs mirror has put changes the in the working dir, the git repo doesn't have them, and git can't commit because it thinks the working dir is clean).
…repositories with darcs2 (thanks Samium Gromoff)
This patch prevents a RuntimeError from occurring when the very first darcs tag is transferred from darcs (version 2) to git (version 1.6). In particular, the RuntimeError is raised because the "git tag -l" command returns with a nonzero exit status when there are no tags defined in the repository.
…codings This stops git-ls-files from escaping control characters and makes it terminate lines with \0
GNU rm exits nonzero if you just say "rm" with no arguments. However, BSD xargs doesn't accept the --no-run-if-empty option to suppress running rm in this case. The solution is to use "rm -f", which (among other things) should make GNU rm happy to run with no other arguments.
Here's a small patch that helps on a few repos I've converted. If the output of git-log is too long for one's terminal, git sends the output to less(1) (or perhaps more(1)) which requires manual interaction in order to continue with the import. This patch causes git to use 'cat' instead, which fixed my problems.