summaryrefslogtreecommitdiff
path: root/git/index
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2015-01-12 12:25:53 +0100
committerSebastian Thiel <byronimo@gmail.com>2015-01-12 12:25:53 +0100
commite7671110bc865786ffe61cf9b92bf43c03759229 (patch)
tree3318b3b49d2a6c5f58a31ce189c27d1cf4d56927 /git/index
parentede325d15ba9cba0e7fe9ee693085fd5db966629 (diff)
downloadgitpython-e7671110bc865786ffe61cf9b92bf43c03759229.tar.gz
Removed os.path.realpath invocations as they are not necessary if paths are used consistently.
This will save IOPs, and make the code easier to understand (I suppose). Related to #224
Diffstat (limited to 'git/index')
-rw-r--r--git/index/base.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/git/index/base.py b/git/index/base.py
index 66fd5b1f..db0c3cda 100644
--- a/git/index/base.py
+++ b/git/index/base.py
@@ -579,8 +579,14 @@ class IndexFile(LazyMixin, diff.Diffable, Serializable):
entries_added = list()
if path_rewriter:
for path in paths:
- abspath = os.path.abspath(path)
- gitrelative_path = abspath[len(self.repo.working_tree_dir) + 1:]
+ if os.path.isabs(path):
+ abspath = path
+ gitrelative_path = path[len(self.repo.working_tree_dir) + 1:]
+ else:
+ gitrelative_path = path
+ abspath = os.path.join(self.repo.working_tree_dir, gitrelative_path)
+ # end obtain relative and absolute paths
+
blob = Blob(self.repo, Blob.NULL_BIN_SHA,
stat_mode_to_index_mode(os.stat(abspath).st_mode),
to_native_path_linux(gitrelative_path))