diff --git a/docs/gl_objects/projects.py b/docs/gl_objects/projects.py index 6cdd26072..4a6f3ad37 100644 --- a/docs/gl_objects/projects.py +++ b/docs/gl_objects/projects.py @@ -142,7 +142,10 @@ # end repository tree # repository blob -file_content = p.repository_blob('master', 'README.rst') +items = project.repository_tree(path='docs', ref='branch1') +file_info = p.repository_blob(items[0]['id']) +content = base64.b64decode(file_info['content']) +size = file_info['size'] # end repository blob # repository raw_blob diff --git a/docs/gl_objects/projects.rst b/docs/gl_objects/projects.rst index 8465eb9ac..eb15a3bf1 100644 --- a/docs/gl_objects/projects.rst +++ b/docs/gl_objects/projects.rst @@ -120,7 +120,7 @@ List the repository tree: :start-after: # repository tree :end-before: # end repository tree -Get the content of a file for a commit: +Get the content and metadata of a file for a commit, using a blob sha: .. literalinclude:: projects.py :start-after: # repository blob diff --git a/gitlab/v4/objects.py b/gitlab/v4/objects.py index a57adffed..5a3f17c42 100644 --- a/gitlab/v4/objects.py +++ b/gitlab/v4/objects.py @@ -2024,7 +2024,7 @@ def repository_tree(self, path='', ref='', **kwargs): @cli.register_custom_action('Project', ('sha', )) @exc.on_http_error(exc.GitlabGetError) def repository_blob(self, sha, **kwargs): - """Return a blob by blob SHA. + """Return a file by blob SHA. Args: sha(str): ID of the blob @@ -2035,7 +2035,7 @@ def repository_blob(self, sha, **kwargs): GitlabGetError: If the server failed to perform the request Returns: - str: The blob metadata + dict: The blob content and metadata """ path = '/projects/%s/repository/blobs/%s' % (self.get_id(), sha)