@@ -44,10 +44,8 class Repository::Git < Repository | |||
|
44 | 44 | scm_revision = scm_info.lastrev.scmid |
|
45 | 45 | |
|
46 | 46 | unless changesets.find_by_scmid(scm_revision) |
|
47 | ||
|
48 | revisions = scm.revisions('', db_revision, nil) | |
|
47 | scm.revisions('', db_revision, nil, :reverse => true) do |revision| | |
|
49 | 48 | transaction do |
|
50 | revisions.reverse_each do |revision| | |
|
51 | 49 | changeset = Changeset.create(:repository => self, |
|
52 | 50 | :revision => revision.identifier, |
|
53 | 51 | :scmid => revision.scmid, |
@@ -139,10 +139,10 module Redmine | |||
|
139 | 139 | def revisions(path, identifier_from, identifier_to, options={}) |
|
140 | 140 | revisions = Revisions.new |
|
141 | 141 | cmd = "#{GIT_BIN} --git-dir #{target('')} log --raw " |
|
142 | cmd << " --reverse" if options[:reverse] | |
|
142 | 143 | cmd << " -n #{options[:limit].to_i} " if (!options.nil?) && options[:limit] |
|
143 | 144 | cmd << " #{shell_quote(identifier_from + '..')} " if identifier_from |
|
144 | 145 | cmd << " #{shell_quote identifier_to} " if identifier_to |
|
145 | #cmd << " HEAD " if !identifier_to | |
|
146 | 146 | shellout(cmd) do |io| |
|
147 | 147 | files=[] |
|
148 | 148 | changeset = {} |
@@ -155,13 +155,18 module Redmine | |||
|
155 | 155 | value = $1 |
|
156 | 156 | if (parsing_descr == 1 || parsing_descr == 2) |
|
157 | 157 | parsing_descr = 0 |
|
158 |
revision |
|
|
158 | revision = Revision.new({:identifier => changeset[:commit], | |
|
159 | 159 |
|
|
160 | 160 |
|
|
161 | 161 |
|
|
162 | 162 |
|
|
163 | 163 |
|
|
164 | 164 |
|
|
165 | if block_given? | |
|
166 | yield revision | |
|
167 | else | |
|
168 | revisions << revision | |
|
169 | end | |
|
165 | 170 | changeset = {} |
|
166 | 171 | files = [] |
|
167 | 172 | revno = revno + 1 |
@@ -190,14 +195,20 module Redmine | |||
|
190 | 195 | end |
|
191 | 196 | end |
|
192 | 197 | |
|
193 |
|
|
|
198 | if changeset[:commit] | |
|
199 | revision = Revision.new({:identifier => changeset[:commit], | |
|
194 | 200 | :scmid => changeset[:commit], |
|
195 | 201 | :author => changeset[:author], |
|
196 | 202 | :time => Time.parse(changeset[:date]), |
|
197 | 203 | :message => changeset[:description], |
|
198 | 204 | :paths => files |
|
199 |
}) |
|
|
200 | ||
|
205 | }) | |
|
206 | if block_given? | |
|
207 | yield revision | |
|
208 | else | |
|
209 | revisions << revision | |
|
210 | end | |
|
211 | end | |
|
201 | 212 | end |
|
202 | 213 | |
|
203 | 214 | return nil if $? && $?.exitstatus != 0 |
General Comments 0
You need to be logged in to leave comments.
Login now