##// END OF EJS Templates
scm: git: reduce saving heads times in fetching revisions (#8857, #9472)...
Toshi MARUYAMA -
r8720:165327a074d8
parent child
Show More
@@ -162,10 +162,12 class Repository::Git < Repository
162 162 opts[:excludes] = prev_db_heads
163 163 opts[:includes] = repo_heads
164 164 begin
165 cnt = 0
165 166 scm.revisions('', nil, nil, opts) do |rev|
167 cnt += 1
166 168 db_rev = find_changeset_by_name(rev.scmid)
167 transaction do
168 if db_rev.nil?
169 if db_rev.nil?
170 transaction do
169 171 db_saved_rev = save_revision(rev)
170 172 parents = {}
171 173 parents[db_saved_rev] = rev.parents unless rev.parents.nil?
@@ -173,6 +175,9 class Repository::Git < Repository
173 175 ch.parents = chparents.collect{|rp| find_changeset_by_name(rp)}.compact
174 176 end
175 177 end
178 end
179 if cnt > 100
180 cnt = 0
176 181 h["heads"] = prev_db_heads.dup
177 182 h["heads"] << rev.scmid
178 183 merge_extra_info(h)
General Comments 0
You need to be logged in to leave comments. Login now