nirvdrum / svn2git

Ruby tool for importing existing svn projects into git.
MIT License
2.11k stars 443 forks source link

command failed: git gc #243

Open ameenross opened 7 years ago

ameenross commented 7 years ago

Getting this error. Manually running git gc afterwards works. However, I don't really need the repo to be garbage collected (waste of CPU cycles in my usage scenario). Is there a CLI option to skip it?

svigerske commented 6 years ago

I'm also getting this message. In verbose mode, I get the following after the git fetch run

Auto packing the repository in background for optimum performance.
See "git help gc" for manual housekeeping.
Checked out HEAD:
  file:///***./trunk r374
Running command: git branch -l --no-color
* master
Running command: git branch -r --no-color
  svn/trunk
Running command: git config --local --get user.name
Running command: git config --local --get user.email
Running command: git checkout -f master
Already on 'master'
Running command: git gc
fatal: gc is already running on machine 'mangosteen' pid 13575 (use --force if not)
command failed:
git gc

And it is true that there is a git gc running under that pid. It looks that git gc is run twice by svn2git and the first one was still running in the background when the second one is started.

dccarson commented 5 years ago

Any chance of a some sort of workaround for this?

svigerske commented 5 years ago

I worked around this by disabling auto-run of garbage collect before using svn2git:

git config --global gc.auto 0

(and then reenable it after it git config --global --unset gc.auto)

dccarson commented 5 years ago

I've used svn2git successfully on several other repos. It only fails on one repo in my list, but it always fails on that one.

Thanks for the simple solution. I'll give it a try.

dmoebius commented 4 years ago

Got the same error, too, because of the circumstances @svigerske described. IMHO it would be best to remove this last step of running "git gc", instead just print a message at the end of the migration saying that it would be best for the user to run "git gc" now, manually.

dmoebius commented 4 years ago

btw. this issue seems to be a duplicate of #180