Skip to content

How to display the progress of the download (clone_from) ? #1059

Description

@qcha41

Hello,

I am a new GitPython user and I would like to display a progress bar when cloning locally a large GitHub repository. To begin with, I have created a RemoteProgress based class and I have plugged it in the clone_from() function :

from git import Repo
from git.remote import RemoteProgress

class Progress(RemoteProgress):
    def update(self, *args):
        print(self._cur_line)

Repo.clone_from(github_url,local_path,progress=Progress())

When I run it, I have well the progress from 0 to 100% of remote: Counting objects: and remote: Compressing objects: steps (which are super fast) but after that, nothing more : the terminal keep freezed until the end of the download.

How to catch the progress of the download itself ?

Thank you in advance!

Activity

  1. Byron commented on Sep 28, 2020

    @Byron
    Member

    From what I could gather in the docs this is essentially what needs to be done, and that should include local progress (indexing, resolving) along with remote progress.

    Maybe for some reason progress cannot be parsed, maybe override line_dropped(self, line) to learn about lines that couldn't be parsed.

    Nonetheless, I would also expect that to work in a more straightforward fashion, maybe we can figure that out here.

  2. locked and limited conversation to collaborators on Feb 26, 2021
  3. reopened this on Feb 26, 2021
  4. added theissue type on Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions