git-trac 0.0.20080127 → 0.0.20080204

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -116,7 +116,7 @@ module Git
116
116
  end
117
117
 
118
118
  def apply(options = {})
119
- repository.popen3("git-apply", "-p#{p_level}", :cached => true, :whitespace => "nowarn") do |inn,out,err|
119
+ repository.popen3("git","apply", "-p#{p_level}", "--cached", "--whitespace=nowarn") do |inn,out,err|
120
120
  inn.puts patch_with_root(options[:root])
121
121
  inn.close
122
122
  err.read.empty?
@@ -37,23 +37,10 @@ module Git
37
37
  Dir.chdir(File.dirname(@git_dir),&block)
38
38
  end
39
39
 
40
- # Open3.popen3 in the current working tree. An optional hash in the last
41
- # argument is converted to flags that precede the arguments.
42
- # <tt>:foo_bar => "baz"</tt> becomes <tt>--foo-bar=baz</tt>
40
+ # Open3.popen3 in the current working tree.
43
41
  def popen3(*args,&block)
44
42
  args.flatten!
45
43
  cmd = args.shift
46
- if args.last.kind_of?(Hash)
47
- args.pop.each do |k,v|
48
- k = k.to_s.tr('-_','_-')
49
- opt = case v
50
- when true then "#{k}"
51
- when false then "no-#{k}"
52
- else "#{k}=#{v}"
53
- end
54
- args.unshift "--#{opt}"
55
- end
56
- end
57
44
  in_work_tree { Open3.popen3(cmd,*args,&block) }
58
45
  end
59
46
 
@@ -87,11 +74,11 @@ module Git
87
74
  # Call git-rev-parse on a revision, returning nil if nothing is found.
88
75
  def rev_parse(rev)
89
76
  if rev.kind_of?(String)
90
- exec("git-rev-parse","--verify",rev).chomp
77
+ exec("git","rev-parse","--verify",rev).chomp
91
78
  elsif rev.kind_of?(Array)
92
79
  hash = {}
93
80
  return hash if rev.empty?
94
- exec("git-rev-parse",*rev) do |rev|
81
+ exec("git","rev-parse",*rev) do |rev|
95
82
  hash[name] = rev.chomp if rev.chomp =~ /^[0-9a-f]{40}$/
96
83
  end
97
84
  hash
@@ -100,7 +87,7 @@ module Git
100
87
 
101
88
  def each_ref(*args)
102
89
  pattern = args.empty? ? "refs" : args.join("/")
103
- exec("git-for-each-ref", pattern, :format => "%(objectname) %(refname)") do |line|
90
+ exec("git","for-each-ref", "--format=%(objectname) %(refname)", pattern) do |line|
104
91
  yield *line.chomp.split(" ",2)
105
92
  end
106
93
  end
@@ -127,7 +114,7 @@ module Git
127
114
  def config(arg1 = nil, arg2 = nil)
128
115
  unless @config
129
116
  @config = {}
130
- exec("git-config","-l") do |line|
117
+ exec("git","config","-l") do |line|
131
118
  key, value = line.chomp.split("=",2)
132
119
  superkey, subkey = key.match(/(.*)\.(.*)/).to_a[1,2]
133
120
  @config[superkey] ||= {}
@@ -212,7 +199,7 @@ module Git
212
199
  return number.to_i
213
200
  else
214
201
  hash = generated_commits
215
- exec("git-rev-list", "HEAD", :max_count => 25) do |line|
202
+ exec("git","rev-list", "--max-count=25", "HEAD") do |line|
216
203
  number = hash[line.chomp] and return number
217
204
  end
218
205
  nil
@@ -75,7 +75,7 @@ Available commands:
75
75
 
76
76
  def initialize(argv, repo)
77
77
  @argv, @repository = argv, repo
78
- @options = repo.config("trac")
78
+ @options = repo.config("trac") || {}
79
79
  @opts = OptionParser.new
80
80
  @opts.banner = "Usage: git-trac #{command} #{banner_arguments}\n#{"\n" if description}#{description}"
81
81
  @opts.separator("")
@@ -242,15 +242,12 @@ potentially remove conflicted branches first.
242
242
  opts.on("--[no-]local","don't run git-svn fetch") do |bool|
243
243
  options[:local] = bool
244
244
  end
245
- opts.on("--[no-]update","run git-svn fetch (deprecated)") do |bool|
246
- options[:local] = !bool
247
- end
248
245
  end
249
246
 
250
247
  def run
251
248
  unless options[:local]
252
249
  @repository.in_work_tree do
253
- system("git-svn","fetch")
250
+ system("git","svn","fetch")
254
251
  end
255
252
  end
256
253
  each_ticket_argument do |number, filename|
@@ -336,23 +333,20 @@ it against a production trac server.
336
333
  opts.on("--[no-]local","don't run git-svn fetch") do |bool|
337
334
  options[:local] = bool
338
335
  end
339
- opts.on("--[no-]update","run git-svn fetch (deprecated)") do |bool|
340
- options[:local] = !bool
341
- end
342
336
  end
343
337
 
344
338
  def run
345
339
  number = get_ticket_number
346
340
  unless options[:local]
347
341
  @repository.in_work_tree do
348
- system("git-svn","fetch")
342
+ system("git","svn","fetch")
349
343
  end
350
344
  end
351
345
  ticket = @repository.ticket(number)
352
346
  if $stdin.tty? && !options[:force]
353
347
  block = lambda do
354
348
  @repository.in_work_tree do
355
- system("git-diff", options[:branch] || "trunk...HEAD")
349
+ system("git","diff", options[:branch] || "trunk...HEAD")
356
350
  end
357
351
  description = "##{number} (#{ticket.csv["summary"]}"
358
352
  cols = ENV["COLUMNS"].to_i
@@ -104,7 +104,7 @@ module Git
104
104
  def upload_patch(options = {})
105
105
  filename = options[:filename] || "#{File.basename(repository.current_checkout)}.patch"
106
106
  # diff = repository.exec("git-diff","#{options[:branch] || "trunk"}...HEAD")
107
- diff = repository.exec("git-diff", options[:branch] || "trunk...HEAD")
107
+ diff = repository.exec("git","diff", options[:branch] || "trunk...HEAD")
108
108
  return false if diff.empty?
109
109
  # Don't upload the exact same patch that was pulled down
110
110
  return false if repository.generated_commits[repository.rev_parse("HEAD")] == number
@@ -124,13 +124,13 @@ module Git
124
124
  repository.each_ref("refs/remotes/trac/#{number}") do |object, ref|
125
125
  if File.basename(ref) =~ /#{options[:filter]}/
126
126
  revs << object
127
- repository.exec("git-update-ref","-d",ref,object)
127
+ repository.exec("git","update-ref","-d",ref,object)
128
128
  end
129
129
  end
130
130
  unless revs.empty?
131
131
  repository.each_ref("refs/heads") do |object, ref|
132
132
  if revs.include?(object) && repository.current_checkout != File.basename(ref)
133
- repository.exec("git-branch","-D",File.basename(ref))
133
+ repository.exec("git","branch","-D",File.basename(ref))
134
134
  end
135
135
  end
136
136
  true
@@ -145,13 +145,13 @@ module Git
145
145
  attachments.select do |attachment|
146
146
  attachment.filename =~ /#{options[:filter]}/
147
147
  end.map do |attachment|
148
- parent = repository.exec("git-rev-list","--max-count=1","--before=#{attachment.timestamp}",options[:branch] || 'trunk').chomp
149
- repository.exec("git-read-tree",parent)
148
+ parent = repository.exec("git","rev-list","--max-count=1","--before=#{attachment.timestamp}",options[:branch] || 'trunk').chomp
149
+ repository.exec("git","read-tree",parent)
150
150
  unless attachment.apply(options)
151
151
  yield attachment, false if block_given?
152
152
  next
153
153
  end
154
- tree = repository.exec("git-write-tree").chomp
154
+ tree = repository.exec("git","write-tree").chomp
155
155
  ENV["GIT_AUTHOR_NAME"] = ENV["GIT_COMMITTER_NAME"] = attachment.username
156
156
  ENV["GIT_AUTHOR_EMAIL"] = ENV["GIT_COMMITTER_EMAIL"] = attachment.email
157
157
  ENV["GIT_AUTHOR_DATE"] = ENV["GIT_COMMITTER_DATE"] = attachment.timestamp
@@ -164,7 +164,7 @@ module Git
164
164
  else
165
165
  parents = " -p #{parent}"
166
166
  end
167
- commit = repository.popen3("git-commit-tree #{tree}#{parents}") do |i,o,e|
167
+ commit = repository.popen3("git commit-tree #{tree}#{parents}") do |i,o,e|
168
168
  i.puts "#{number}/#{attachment.filename}"
169
169
  i.puts "\n#{attachment.description}" if attachment.description
170
170
  i.close
@@ -16,12 +16,12 @@ class ExecutionTest < Test::Unit::TestCase
16
16
  at_exit { FileUtils.rm_rf(directory) }
17
17
  FileUtils.mkdir_p(directory)
18
18
  Dir.chdir(directory) do
19
- `git-init`
19
+ `git init`
20
20
  end
21
21
  FileUtils.touch(File.join(directory,".gitignore"))
22
22
  repo = Git::Trac::Repository.new(directory)
23
- repo.exec("git-add",".gitignore")
24
- repo.exec("git-commit","-m","Initial revision")
23
+ repo.exec("git","add",".gitignore")
24
+ repo.exec("git","commit","-m","Initial revision")
25
25
  repo
26
26
  end
27
27
 
@@ -34,15 +34,15 @@ class ExecutionTest < Test::Unit::TestCase
34
34
  end
35
35
 
36
36
  def test_stderr_should_raise
37
- assert_nothing_raised { @repo.exec("git-diff","HEAD") }
38
- assert_raise(Git::Trac::ExecutionError) { @repo.exec("git-diff","TAIL") }
37
+ assert_nothing_raised { @repo.exec("git","diff","HEAD") }
38
+ assert_raise(Git::Trac::ExecutionError) { @repo.exec("git","diff","TAIL") }
39
39
  end
40
40
 
41
41
  def test_should_determine_url
42
- @repo.exec("git-config","svn-remote.svn.url","http://dev.rubyonrails.org/svn/rails")
42
+ @repo.exec("git","config","svn-remote.svn.url","http://dev.rubyonrails.org/svn/rails")
43
43
  @repo.reload
44
44
  assert_equal "http://dev.rubyonrails.org", @repo.url
45
- @repo.exec("git-config","trac.url","http://foo/trac.cgi")
45
+ @repo.exec("git","config","trac.url","http://foo/trac.cgi")
46
46
  @repo.reload
47
47
  assert_equal "http://foo/trac.cgi", @repo.url
48
48
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git-trac
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.20080127
4
+ version: 0.0.20080204
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Pope
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-01-27 00:00:00 -06:00
12
+ date: 2008-02-04 00:00:00 -06:00
13
13
  default_executable: git-trac
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency