@@ -154,10 +154,13 class Repository::Git < Repository | |||
|
154 | 154 | from_scmid = h["branches"][br]["last_scmid"] if h["branches"][br] |
|
155 | 155 | h["branches"][br] ||= {} |
|
156 | 156 | begin |
|
157 | cnt = 0 | |
|
158 | last_rev_scmid = nil | |
|
157 | 159 | scm.revisions('', from_scmid, br, {:reverse => true}) do |rev| |
|
160 | cnt += 1 | |
|
158 | 161 | db_rev = find_changeset_by_name(rev.revision) |
|
159 | transaction do | |
|
160 | if db_rev.nil? | |
|
162 | if db_rev.nil? | |
|
163 | transaction do | |
|
161 | 164 | db_saved_rev = save_revision(rev) |
|
162 | 165 | parents = {} |
|
163 | 166 | parents[db_saved_rev] = rev.parents unless rev.parents.nil? |
@@ -165,11 +168,20 class Repository::Git < Repository | |||
|
165 | 168 | ch.parents = chparents.collect{|rp| find_changeset_by_name(rp)}.compact |
|
166 | 169 | end |
|
167 | 170 | end |
|
168 | h["branches"][br]["last_scmid"] = rev.scmid | |
|
171 | end | |
|
172 | last_rev_scmid = rev.scmid | |
|
173 | if cnt > 100 | |
|
174 | cnt = 0 | |
|
175 | h["branches"][br]["last_scmid"] = last_rev_scmid | |
|
169 | 176 | merge_extra_info(h) |
|
170 | 177 | self.save |
|
171 | 178 | end |
|
172 | 179 | end |
|
180 | unless last_rev_scmid.nil? | |
|
181 | h["branches"][br]["last_scmid"] = last_rev_scmid | |
|
182 | merge_extra_info(h) | |
|
183 | self.save | |
|
184 | end | |
|
173 | 185 | rescue Redmine::Scm::Adapters::CommandFailed => e |
|
174 | 186 | logger.error("save revisions error: #{e.message}") |
|
175 | 187 | end |
General Comments 0
You need to be logged in to leave comments.
Login now