##// END OF EJS Templates
scm: git: use Changeset#create and Changeset#create_change as same with Subversion and Mercurial...
Toshi MARUYAMA -
r9156:f36eb54141c6
parent child
Show More
@@ -208,12 +208,7 class Repository::Git < Repository
208 transaction do
208 transaction do
209 # There is no search in the db for this revision, because above we ensured,
209 # There is no search in the db for this revision, because above we ensured,
210 # that it's not in the db.
210 # that it's not in the db.
211 db_saved_rev = save_revision(rev)
211 save_revision(rev)
212 parents = {}
213 parents[db_saved_rev] = rev.parents unless rev.parents.nil?
214 parents.each do |ch, chparents|
215 ch.parents = chparents.collect{|rp| find_changeset_by_name(rp)}.compact
216 end
217 end
212 end
218 end
213 end
219 h["heads"] = repo_heads.dup
214 h["heads"] = repo_heads.dup
@@ -223,7 +218,7 class Repository::Git < Repository
223 private :save_revisions
218 private :save_revisions
224
219
225 def save_revision(rev)
220 def save_revision(rev)
226 changeset = Changeset.new(
221 changeset = Changeset.create(
227 :repository => self,
222 :repository => self,
228 :revision => rev.identifier,
223 :revision => rev.identifier,
229 :scmid => rev.scmid,
224 :scmid => rev.scmid,
@@ -231,12 +226,12 class Repository::Git < Repository
231 :committed_on => rev.time,
226 :committed_on => rev.time,
232 :comments => rev.message
227 :comments => rev.message
233 )
228 )
234 if changeset.save
229 unless changeset.new_record?
235 rev.paths.each do |file|
230 rev.paths.each { |change| changeset.create_change(change) }
236 Change.create(
231 parents = {}
237 :changeset => changeset,
232 parents[changeset] = rev.parents unless rev.parents.nil?
238 :action => file[:action],
233 parents.each do |ch, chparents|
239 :path => file[:path])
234 ch.parents = chparents.collect{|rp| find_changeset_by_name(rp)}.compact
240 end
235 end
241 end
236 end
242 changeset
237 changeset
General Comments 0
You need to be logged in to leave comments. Login now