summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2016-05-19 13:58:31 +0200
committerSebastian Thiel <byronimo@gmail.com>2016-05-19 13:58:31 +0200
commit00452efe6c748d0e39444dd16d9eb2ed7cc4e64a (patch)
tree29c6abfaa80cde1f0aef29260ba16bc800199204
parentbebc4f56f4e9a0bd3e88fcca3d40ece090252e82 (diff)
parent89ade7bfff534ae799d7dd693b206931d5ed3d4f (diff)
downloadgitpython-00452efe6c748d0e39444dd16d9eb2ed7cc4e64a.tar.gz
Merge pull request #431 from guyzmo/fix-opt_arg-order
Fix order of operators before executing the git command
-rw-r--r--git/cmd.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/git/cmd.py b/git/cmd.py
index e4e3d6da..539482df 100644
--- a/git/cmd.py
+++ b/git/cmd.py
@@ -13,6 +13,8 @@ import threading
import errno
import mmap
+from collections import OrderedDict
+
from contextlib import contextmanager
import signal
from subprocess import (
@@ -783,6 +785,7 @@ class Git(LazyMixin):
def transform_kwargs(self, split_single_char_options=True, **kwargs):
"""Transforms Python style kwargs into git command line options."""
args = list()
+ kwargs = OrderedDict(sorted(kwargs.items(), key=lambda x: x[0]))
for k, v in kwargs.items():
if isinstance(v, (list, tuple)):
for value in v: