Add a branch keyword argument to _run_git_svn_find_rev.
authormatthew_hanson@apple.com <matthew_hanson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 5 Nov 2014 04:49:42 +0000 (04:49 +0000)
committermatthew_hanson@apple.com <matthew_hanson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 5 Nov 2014 04:49:42 +0000 (04:49 +0000)
https://bugs.webkit.org/show_bug.cgi?id=138372

Reviewed by NOBODY (OOPS!).

The addition of this keyword argument allows clients to determine the Git hash
of commits made on an SVN branch, provided that branch has been fetched locally.

* Scripts/webkitpy/common/checkout/scm/git.py:
(Git._run_git_svn_find_rev):
Add a branch keyword argument that is added to the end of the command, if present.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@175603 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/Scripts/webkitpy/common/checkout/scm/git.py

index bc60abdaf0f418a76a29c3baac68cdcfd9094280..71fdd308da6f063132f90844bae0daf08e466eb3 100644 (file)
@@ -1,3 +1,17 @@
+2014-11-04  Matthew Hanson  <matthew_hanson@apple.com>
+
+        Add a branch keyword argument to _run_git_svn_find_rev.
+        https://bugs.webkit.org/show_bug.cgi?id=138372
+
+        Reviewed by Ryosuke Niwa.
+
+        The addition of this keyword argument allows clients to determine the Git hash
+        of commits made on an SVN branch, provided that branch has been fetched locally.
+
+        * Scripts/webkitpy/common/checkout/scm/git.py:
+        (Git._run_git_svn_find_rev):
+        Add a branch keyword argument that is added to the end of the command, if present.
+
 2014-11-04  Chris Dumez  <cdumez@apple.com>
 
         Add ptr() method to Ref class
index 5684c96f297d5e2aaea8d154651a86660f88dcad..de163df8cd963707719cc218fe2c41db10e0326f 100644 (file)
@@ -308,9 +308,17 @@ class Git(SCM, SVNRepository):
             command += changed_files
         return self.prepend_svn_revision(self.run(command, decode_output=False, cwd=self.checkout_root))
 
-    def _run_git_svn_find_rev(self, arg):
+    def _run_git_svn_find_rev(self, revision, branch=None):
+        revision = str(revision)
+        if revision and revision[0] != 'r':
+            revision = 'r' + revision
+
         # git svn find-rev always exits 0, even when the revision or commit is not found.
-        return self._run_git(['svn', 'find-rev', arg]).rstrip()
+        command = ['svn', 'find-rev', revision]
+        if branch:
+            command.append(branch)
+
+        return self._run_git(command).rstrip()
 
     def _string_to_int_or_none(self, string):
         try: