Python и pygit2 — как удалить склонированный репозиторий?

Есть две функции, выполняются последовательно:

1) клонируем репозиторий в каталог

def git_cloning(project, git_url, git_branch):
    directory = '{}/{}'.format(os.getcwd(), project)
    pygit2.clone_repository(git_url, directory, checkout_branch=git_branch)
    return directory


2) что-то делаем

3) Удаляем каталог с репозиторием
def delete_artifacts(directory):
    shutil.rmtree(directory)


Проблема: При удалении вызывается исключение PermissionError: [WinError 5] Отказано в доступе: '{{ Путь к репозиторию }}\.git\\objects\\pack\\pack-30f8a241d61fed812a2c0fb95d53df867755606f.idx'

Возможно я неправильно его удаляю? Как будет правильно, или как бороться с этим вариантом?
Возможно под Linux аналогичной ошибки не возникнет(проверить нет возможности сейчас:( )
  • Вопрос задан
  • 224 просмотра
Решения вопроса 1
@edkliff Автор вопроса
err!
Проблему(и ещё одну, всплывшую под Linux) решил переходом на GitPython
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
delvin-fil
@delvin-fil
Crazy Linux-admin
Эмммм... Вы под win?
Команда dir /? что говорит о выводе скрытых каталогов? Под linux таких проблем просто не может быть, ибо ls -a и сразу видно подкаталог .git, оный и удаляем rm -Rf /path_to_prodject/.git/
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы