Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork938
Open
Labels
Description
I'm using GitPython to do data mining on Git repository on a Windows 10 laptop. To retrieve the stats for commits -which might be on different repositories- I do the following:
#Tried this. It didn't work if platform.system() == 'Windows': import win32file win32file._setmaxstdio(2048) #About 20 000 commits commits = get_commits() for commit_sha, repository in commits: repository_location = REPO_LOCATION + repository repository = git.Repo(repository_location) commit = repository.rev_parse(commit_sha) total_stats = commit.stats.total process_stats(total_stats) #Tried this also. It won't work del total_stats del repository
However, I get the following error message every time:
File "my_code.py", line 126, in my_code File "\Anaconda2\lib\site-packages\git\objects\commit.py", line 229, in stats File "\Anaconda2\lib\site-packages\gitdb\util.py", line 237, in __getattr__ File "\Anaconda2\lib\site-packages\git\objects\commit.py", line 141, in _set_cache_ File "\Anaconda2\lib\site-packages\git\db.py", line 45, in stream File "\Anaconda2\lib\site-packages\git\cmd.py", line 982, in stream_object_data File "\Anaconda2\lib\site-packages\git\cmd.py", line 948, in _get_persistent_cmd File "\Anaconda2\lib\site-packages\git\cmd.py", line 878, in _call_process File "\Anaconda2\lib\site-packages\git\cmd.py", line 604, in execute File "\Anaconda2\lib\subprocess.py", line 732, in __init__IOError: [Errno 24] Too many open files
Is there a way to free resource on every loop iteration to avoid the error message?