Sha256: 2d5b126900f79a2e40cc3898c34cc9cb04943865a574020b9e7ec6b4999466af

Contents?: true

Size: 1.35 KB

Versions: 22

Compression:

Stored size: 1.35 KB

Contents

module OhlohScm::Adapters
	class SvnChainAdapter < SvnAdapter

		# Returns the count of commits following revision number 'after'.
		def commit_count(opts={})
			(parent_svn(opts[:after]) ? parent_svn(opts[:after]).commit_count(opts) : 0) + super(opts)
		end

		# Returns an array of revision numbers for all commits following revision number 'after'.
		def commit_tokens(opts={})
			(parent_svn(opts[:after]) ? parent_svn(opts[:after]).commit_tokens(opts) : []) + super(opts)
		end

		# Returns an array of commits following revision number 'after'.
		def commits(opts={})
			(parent_svn(opts[:after]) ? parent_svn(opts[:after]).commits(opts) : []) + super(opts)
		end

		def verbose_commit(rev=0)
			parent_svn(rev) ? parent_svn.verbose_commit(rev) : super(rev)
		end

		# If the diff points to a file, simply returns the diff.
		# If the diff points to a directory, returns an array of diffs for every file in the directory.
		def deepen_diff(diff, rev)
      if %w(A R).include?(diff.action) && diff.path == '' && parent_svn && rev == first_token
				# A very special case that is important for chaining.
				# This is the first commit, and the entire tree is being created by copying from parent_svn.
				# In this case, there isn't actually any change, just
				# a change of branch_name. Return no diffs at all.
				nil
			else
				super(diff, rev)
			end
		end
	end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
ohloh_scm-2.5.1 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.14 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.13 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.12 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.11 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.10 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.9 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.8 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.7 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.6 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.5 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.4 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.3 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.1 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.4.0 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.3.5 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.3.4 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.3.2 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.3.1 lib/ohloh_scm/adapters/svn_chain/commits.rb
ohloh_scm-2.3.0 lib/ohloh_scm/adapters/svn_chain/commits.rb