Replace blocking subprocess.run calls in run_git_command and get_commits_by_day with async subprocess execution using asyncio.create_subprocess_exec and proc.communicate. Update process_repo's git clone call to use the same async pattern, ensuring the entire git operations pipeline runs non-blocking in the event loop.