]> source.dussan.org Git - redmine.git/commitdiff
Fixed: GitAdapter#get_rev should use current branch instead of hardwiring @master...
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Thu, 29 May 2008 18:48:00 +0000 (18:48 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Thu, 29 May 2008 18:48:00 +0000 (18:48 +0000)
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1475 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine/scm/adapters/git_adapter.rb

index a9ab505a85ebae4ec6594e71b9117e852fe605ea..9dfbd17a83e48a9d7d136092a64b60d6d41f923c 100644 (file)
@@ -27,9 +27,13 @@ module Redmine
 
         # Get the revision of a particuliar file
         def get_rev (rev,path)
-          cmd="#{GIT_BIN} --git-dir #{target('')} show #{shell_quote rev} -- #{shell_quote path}" if rev!='latest' and (! rev.nil?)
-          cmd="#{GIT_BIN} --git-dir #{target('')} log -1 master -- #{shell_quote path}" if 
-            rev=='latest' or rev.nil?
+        
+          if rev != 'latest' && !rev.nil?
+            cmd="#{GIT_BIN} --git-dir #{target('')} show #{shell_quote rev} -- #{shell_quote path}" 
+          else
+            branch = shellout("#{GIT_BIN} --git-dir #{target('')} branch") { |io| io.grep(/\*/)[0].strip.match(/\* (.*)/)[1] }
+            cmd="#{GIT_BIN} --git-dir #{target('')} log -1 #{branch} -- #{shell_quote path}" 
+          end
           rev=[]
           i=0
           shellout(cmd) do |io|