summaryrefslogtreecommitdiffstats
path: root/project.py
diff options
context:
space:
mode:
Diffstat (limited to 'project.py')
-rw-r--r--project.py22
1 files changed, 16 insertions, 6 deletions
diff --git a/project.py b/project.py
index 4a601f87..918ee09c 100644
--- a/project.py
+++ b/project.py
@@ -315,11 +315,13 @@ class RemoteSpec(object):
315 name, 315 name,
316 url=None, 316 url=None,
317 review=None, 317 review=None,
318 revision=None): 318 revision=None,
319 orig_name=None):
319 self.name = name 320 self.name = name
320 self.url = url 321 self.url = url
321 self.review = review 322 self.review = review
322 self.revision = revision 323 self.revision = revision
324 self.orig_name = orig_name
323 325
324 326
325class RepoHook(object): 327class RepoHook(object):
@@ -1858,7 +1860,10 @@ class Project(object):
1858 # will fail. 1860 # will fail.
1859 # * otherwise, fetch all branches to make sure we end up with the 1861 # * otherwise, fetch all branches to make sure we end up with the
1860 # specific commit. 1862 # specific commit.
1861 current_branch_only = self.upstream and not ID_RE.match(self.upstream) 1863 if self.upstream:
1864 current_branch_only = not ID_RE.match(self.upstream)
1865 else:
1866 current_branch_only = False
1862 1867
1863 if not name: 1868 if not name:
1864 name = self.remote.name 1869 name = self.remote.name
@@ -2437,7 +2442,7 @@ class Project(object):
2437 def _allrefs(self): 2442 def _allrefs(self):
2438 return self.bare_ref.all 2443 return self.bare_ref.all
2439 2444
2440 def _getLogs(self, rev1, rev2, oneline=False, color=True): 2445 def _getLogs(self, rev1, rev2, oneline=False, color=True, pretty_format=None):
2441 """Get logs between two revisions of this project.""" 2446 """Get logs between two revisions of this project."""
2442 comp = '..' 2447 comp = '..'
2443 if rev1: 2448 if rev1:
@@ -2448,6 +2453,8 @@ class Project(object):
2448 out = DiffColoring(self.config) 2453 out = DiffColoring(self.config)
2449 if out.is_on and color: 2454 if out.is_on and color:
2450 cmd.append('--color') 2455 cmd.append('--color')
2456 if pretty_format is not None:
2457 cmd.append('--pretty=format:%s' % pretty_format)
2451 if oneline: 2458 if oneline:
2452 cmd.append('--oneline') 2459 cmd.append('--oneline')
2453 2460
@@ -2464,14 +2471,17 @@ class Project(object):
2464 raise 2471 raise
2465 return None 2472 return None
2466 2473
2467 def getAddedAndRemovedLogs(self, toProject, oneline=False, color=True): 2474 def getAddedAndRemovedLogs(self, toProject, oneline=False, color=True,
2475 pretty_format=None):
2468 """Get the list of logs from this revision to given revisionId""" 2476 """Get the list of logs from this revision to given revisionId"""
2469 logs = {} 2477 logs = {}
2470 selfId = self.GetRevisionId(self._allrefs) 2478 selfId = self.GetRevisionId(self._allrefs)
2471 toId = toProject.GetRevisionId(toProject._allrefs) 2479 toId = toProject.GetRevisionId(toProject._allrefs)
2472 2480
2473 logs['added'] = self._getLogs(selfId, toId, oneline=oneline, color=color) 2481 logs['added'] = self._getLogs(selfId, toId, oneline=oneline, color=color,
2474 logs['removed'] = self._getLogs(toId, selfId, oneline=oneline, color=color) 2482 pretty_format=pretty_format)
2483 logs['removed'] = self._getLogs(toId, selfId, oneline=oneline, color=color,
2484 pretty_format=pretty_format)
2475 return logs 2485 return logs
2476 2486
2477 class _GitGetByExec(object): 2487 class _GitGetByExec(object):