summaryrefslogtreecommitdiff
path: root/objects/blob.py
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2010-11-21 19:17:48 +0100
committerSebastian Thiel <byronimo@gmail.com>2010-11-21 19:17:48 +0100
commitfafe8a77db75083de3e7af92185ecdb7f2d542d3 (patch)
tree0b2d17ca62fc1f986bbaefe8ca6ea641e3fa2d8d /objects/blob.py
parent0b813371f5a8af95152cae109d28c7c97bfaf79f (diff)
downloadgitpython-fafe8a77db75083de3e7af92185ecdb7f2d542d3.tar.gz
moved all contents, incl. submodule gitdb, up to the root directory
Diffstat (limited to 'objects/blob.py')
-rw-r--r--objects/blob.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/objects/blob.py b/objects/blob.py
new file mode 100644
index 00000000..32f8c61c
--- /dev/null
+++ b/objects/blob.py
@@ -0,0 +1,27 @@
+# blob.py
+# Copyright (C) 2008, 2009 Michael Trier (mtrier@gmail.com) and contributors
+#
+# This module is part of GitPython and is released under
+# the BSD License: http://www.opensource.org/licenses/bsd-license.php
+
+from mimetypes import guess_type
+import base
+
+__all__ = ('Blob', )
+
+class Blob(base.IndexObject):
+ """A Blob encapsulates a git blob object"""
+ DEFAULT_MIME_TYPE = "text/plain"
+ type = "blob"
+
+ __slots__ = tuple()
+
+ @property
+ def mime_type(self):
+ """
+ :return: String describing the mime type of this file (based on the filename)
+ :note: Defaults to 'text/plain' in case the actual file type is unknown. """
+ guesses = None
+ if self.path:
+ guesses = guess_type(self.path)
+ return guesses and guesses[0] or self.DEFAULT_MIME_TYPE