redcar 0.3.10.1dev → 0.4

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.
Files changed (460) hide show
  1. data/CHANGES +12 -2
  2. data/README.md +1 -2
  3. data/Rakefile +1 -1
  4. data/bin/redcar +4 -4
  5. data/lib/redcar.rb +3 -3
  6. data/lib/redcar/installer.rb +3 -3
  7. data/lib/redcar/runner.rb +5 -1
  8. data/lib/redcar/usage.rb +2 -1
  9. data/plugins/application/features/step_definitions/tree_steps.rb +20 -9
  10. data/plugins/application/features/support/env.rb +27 -8
  11. data/plugins/application/lib/application/command/executor.rb +5 -1
  12. data/plugins/application/lib/application/menu/builder/group.rb +4 -0
  13. data/plugins/application/lib/application/menu/item.rb +17 -2
  14. data/plugins/application/spec/application/command/executor_spec.rb +5 -0
  15. data/plugins/application_swt/lib/application_swt/event_loop.rb +10 -5
  16. data/plugins/application_swt/lib/application_swt/menu.rb +30 -19
  17. data/plugins/application_swt/lib/application_swt/swt_wrapper.rb +2 -0
  18. data/plugins/application_swt/lib/application_swt/window.rb +43 -43
  19. data/plugins/core/lib/core/gui.rb +6 -1
  20. data/plugins/core/lib/core/observable.rb +1 -1
  21. data/plugins/core/spec/core/task_queue_spec.rb +2 -5
  22. data/plugins/declarations/lib/declarations.rb +5 -1
  23. data/plugins/declarations/lib/declarations/file.rb +1 -1
  24. data/plugins/declarations/lib/declarations/parser.rb +60 -16
  25. data/plugins/edit_view/features/step_definitions/tab_steps.rb +4 -0
  26. data/plugins/edit_view/features/step_definitions/window_steps.rb +1 -1
  27. data/plugins/edit_view/features/support/env.rb +5 -0
  28. data/plugins/edit_view/lib/edit_view.rb +3 -1
  29. data/plugins/edit_view/lib/edit_view/document.rb +10 -0
  30. data/plugins/edit_view/lib/edit_view/document/mirror.rb +1 -1
  31. data/plugins/edit_view_swt/lib/edit_view_swt.rb +3 -0
  32. data/plugins/find-in-project/README.md +9 -0
  33. data/plugins/find-in-project/TODO.md +8 -0
  34. data/plugins/find-in-project/lib/find_in_project.rb +58 -0
  35. data/plugins/find-in-project/lib/find_in_project/commands.rb +43 -0
  36. data/plugins/find-in-project/lib/find_in_project/controllers.rb +108 -0
  37. data/plugins/find-in-project/lib/find_in_project/engines/ack.rb +42 -0
  38. data/plugins/find-in-project/lib/find_in_project/engines/grep.rb +52 -0
  39. data/plugins/find-in-project/lib/find_in_project/images/collapsed.png +0 -0
  40. data/plugins/find-in-project/lib/find_in_project/images/expanded.png +0 -0
  41. data/plugins/find-in-project/lib/find_in_project/stylesheets/style.css +205 -0
  42. data/plugins/find-in-project/lib/find_in_project/views/_results.html.erb +50 -0
  43. data/plugins/find-in-project/lib/find_in_project/views/index.html.erb +120 -0
  44. data/plugins/find-in-project/plugin.rb +10 -0
  45. data/plugins/html_view/features/step_definitions/html_view_steps.rb +20 -0
  46. data/plugins/html_view/features/support/env.rb +0 -0
  47. data/plugins/html_view/lib/html_view.rb +3 -1
  48. data/plugins/outline_view/lib/outline_view.rb +64 -0
  49. data/plugins/outline_view/lib/outline_view/commands.rb +13 -0
  50. data/plugins/outline_view/plugin.rb +10 -0
  51. data/plugins/outline_view_swt/lib/icons/alias.png +0 -0
  52. data/plugins/outline_view_swt/lib/icons/assignment.png +0 -0
  53. data/plugins/outline_view_swt/lib/icons/attribute.png +0 -0
  54. data/plugins/outline_view_swt/lib/icons/class.png +0 -0
  55. data/plugins/outline_view_swt/lib/icons/interface.png +0 -0
  56. data/plugins/outline_view_swt/lib/icons/method.png +0 -0
  57. data/plugins/outline_view_swt/lib/outline_view_swt.rb +81 -0
  58. data/plugins/outline_view_swt/plugin.rb +7 -0
  59. data/plugins/pair_highlighter/lib/pair_highlighter.rb +34 -0
  60. data/plugins/pair_highlighter/lib/pair_highlighter/document_controller.rb +185 -0
  61. data/plugins/pair_highlighter/plugin.rb +9 -0
  62. data/plugins/project/features/open_directory_tree.feature +1 -1
  63. data/plugins/project/features/refresh_directory_tree.feature +8 -8
  64. data/plugins/project/features/step_definitions/file_steps.rb +2 -2
  65. data/plugins/project/lib/project.rb +8 -4
  66. data/plugins/project/lib/project/adapters/remote_protocols/ftp.rb +0 -4
  67. data/plugins/project/lib/project/adapters/remote_protocols/protocol.rb +0 -4
  68. data/plugins/project/lib/project/adapters/remote_protocols/sftp.rb +0 -1
  69. data/plugins/project/lib/project/manager.rb +0 -2
  70. data/plugins/project/spec/project/adapters/remote_protocols/ftp_spec.rb +4 -0
  71. data/plugins/project/spec/project/adapters/remote_protocols/sftp_spec.rb +3 -0
  72. data/plugins/redcar/plugin.rb +2 -1
  73. data/plugins/redcar/redcar.rb +149 -138
  74. data/plugins/redcar_debug/lib/redcar_debug.rb +7 -0
  75. data/plugins/runnables/features/command_tree.feature +25 -0
  76. data/plugins/runnables/features/run_command_tab.feature +46 -0
  77. data/plugins/runnables/features/step_definitions/runnable_steps.rb +22 -0
  78. data/plugins/runnables/features/support/env.rb +67 -0
  79. data/plugins/runnables/lib/runnables.rb +55 -18
  80. data/plugins/runnables/lib/runnables/command_output_controller.rb +82 -28
  81. data/plugins/runnables/views/command_output.html.erb +16 -37
  82. data/plugins/runnables/views/default.css +68 -0
  83. data/plugins/runnables/views/indicator.gif +0 -0
  84. data/plugins/runnables/views/redcar_small_icon.png +0 -0
  85. data/plugins/runnables/views/reset.css +53 -0
  86. data/plugins/runnables/views/running_test.html +41 -0
  87. data/plugins/runnables/views/wedgeDown.png +0 -0
  88. data/plugins/runnables/views/wedgeRight.png +0 -0
  89. data/plugins/scm/icons/ATTRIBUTION +5 -0
  90. data/plugins/scm/icons/folder--arrow.png +0 -0
  91. data/plugins/scm/icons/folder--exclamation.png +0 -0
  92. data/plugins/scm/icons/folder--minus.png +0 -0
  93. data/plugins/scm/icons/folder--pencil.png +0 -0
  94. data/plugins/scm/icons/folder--plus.png +0 -0
  95. data/plugins/scm/icons/notebook--arrow.png +0 -0
  96. data/plugins/scm/icons/notebook--exclamation.png +0 -0
  97. data/plugins/scm/icons/notebook--minus.png +0 -0
  98. data/plugins/scm/icons/notebook--pencil.png +0 -0
  99. data/plugins/scm/icons/notebook--plus.png +0 -0
  100. data/plugins/scm/lib/scm.rb +278 -0
  101. data/plugins/scm/lib/scm/commit_mirror.rb +72 -0
  102. data/plugins/scm/lib/scm/diff_mirror.rb +31 -0
  103. data/plugins/scm/lib/scm/errors.rb +8 -0
  104. data/plugins/scm/lib/scm/model.rb +254 -0
  105. data/plugins/scm/lib/scm/scm_changes_controller.rb +94 -0
  106. data/plugins/scm/lib/scm/scm_changes_mirror.rb +51 -0
  107. data/plugins/scm/lib/scm/scm_changes_mirror/change.rb +61 -0
  108. data/plugins/scm/lib/scm/scm_changes_mirror/changes_node.rb +47 -0
  109. data/plugins/scm/lib/scm/scm_changes_mirror/drag_controller.rb +78 -0
  110. data/plugins/scm/lib/scm/scm_commits_controller.rb +49 -0
  111. data/plugins/scm/lib/scm/scm_commits_mirror.rb +36 -0
  112. data/plugins/scm/lib/scm/scm_commits_mirror/commit.rb +26 -0
  113. data/plugins/scm/lib/scm/scm_commits_mirror/commits_node.rb +38 -0
  114. data/plugins/scm/plugin.rb +8 -0
  115. data/plugins/scm/spec/spec_helper.rb +5 -0
  116. data/plugins/scm/vendor/ruby-blockcache/LICENSE +21 -0
  117. data/plugins/scm/vendor/ruby-blockcache/README.md +44 -0
  118. data/plugins/scm/vendor/ruby-blockcache/lib/blockcache.rb +120 -0
  119. data/plugins/scm_git/lib/scm_git.rb +478 -0
  120. data/plugins/scm_git/lib/scm_git/change.rb +127 -0
  121. data/plugins/scm_git/lib/scm_git/commit.rb +18 -0
  122. data/plugins/scm_git/lib/scm_git/config_file.rb +31 -0
  123. data/plugins/scm_git/plugin.rb +7 -0
  124. data/plugins/scm_git/vendor/ruby-git/History.txt +21 -0
  125. data/plugins/scm_git/vendor/ruby-git/LICENSE +21 -0
  126. data/plugins/scm_git/vendor/ruby-git/README +240 -0
  127. data/plugins/scm_git/vendor/ruby-git/Rakefile +51 -0
  128. data/plugins/scm_git/vendor/ruby-git/TODO +27 -0
  129. data/plugins/scm_git/vendor/ruby-git/VERSION +1 -0
  130. data/plugins/scm_git/vendor/ruby-git/benchmark.rb +157 -0
  131. data/plugins/scm_git/vendor/ruby-git/camping/gitweb.rb +555 -0
  132. data/plugins/scm_git/vendor/ruby-git/git.gemspec +53 -0
  133. data/plugins/scm_git/vendor/ruby-git/lib/git.rb +156 -0
  134. data/plugins/scm_git/vendor/ruby-git/lib/git/author.rb +14 -0
  135. data/plugins/scm_git/vendor/ruby-git/lib/git/base.rb +479 -0
  136. data/plugins/scm_git/vendor/ruby-git/lib/git/branch.rb +104 -0
  137. data/plugins/scm_git/vendor/ruby-git/lib/git/branches.rb +48 -0
  138. data/plugins/scm_git/vendor/ruby-git/lib/git/diff.rb +146 -0
  139. data/plugins/scm_git/vendor/ruby-git/lib/git/index.rb +5 -0
  140. data/plugins/scm_git/vendor/ruby-git/lib/git/lib.rb +730 -0
  141. data/plugins/scm_git/vendor/ruby-git/lib/git/log.rb +117 -0
  142. data/plugins/scm_git/vendor/ruby-git/lib/git/object.rb +273 -0
  143. data/plugins/scm_git/vendor/ruby-git/lib/git/path.rb +27 -0
  144. data/plugins/scm_git/vendor/ruby-git/lib/git/remote.rb +40 -0
  145. data/plugins/scm_git/vendor/ruby-git/lib/git/repository.rb +4 -0
  146. data/plugins/scm_git/vendor/ruby-git/lib/git/stash.rb +27 -0
  147. data/plugins/scm_git/vendor/ruby-git/lib/git/stashes.rb +44 -0
  148. data/plugins/scm_git/vendor/ruby-git/lib/git/status.rb +127 -0
  149. data/plugins/scm_git/vendor/ruby-git/lib/git/working_directory.rb +4 -0
  150. data/plugins/scm_git/vendor/ruby-git/ruby-git.gemspec +15 -0
  151. data/plugins/scm_git/vendor/ruby-git/tests/all_tests.rb +4 -0
  152. data/plugins/scm_git/vendor/ruby-git/tests/files/index +0 -0
  153. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/FETCH_HEAD +1 -0
  154. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/HEAD +1 -0
  155. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/config +13 -0
  156. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/description +1 -0
  157. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/applypatch-msg +15 -0
  158. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/commit-msg +21 -0
  159. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/post-commit +8 -0
  160. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/post-receive +16 -0
  161. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/post-update +8 -0
  162. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/pre-applypatch +14 -0
  163. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/pre-commit +70 -0
  164. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/pre-rebase +150 -0
  165. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/hooks/update +78 -0
  166. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/index +0 -0
  167. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/info/exclude +6 -0
  168. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/HEAD +75 -0
  169. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/git_grep +5 -0
  170. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/master +64 -0
  171. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/test +3 -0
  172. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/test_branches +1 -0
  173. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/heads/test_object +2 -0
  174. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/logs/refs/remotes/working/master +1 -0
  175. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/00/62cdf4c1e63069eececf54325535e91fd57c42 +0 -0
  176. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/00/ea60e1331b184386392037a7267dfb4a7c7d86 +0 -0
  177. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/01/0b7b79019cb510d8c5849704fd10541655916d +0 -0
  178. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/01/dd46ebe07fc30c10c85c2e926c70f2d7058a6b +0 -0
  179. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/02/b2a02844d00574c234d17bec6294e832f3c4c1 +0 -0
  180. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/06/f4e8a840d23fc0ab94895a5d16827a19f75fb7 +0 -0
  181. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0b/2fe00801b62b7760c23d554796b05abc16af92 +0 -0
  182. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0b/5262f6ee3552a99b7081a317e8289d6a4d8e72 +0 -0
  183. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0b/c0d846cf80b079e763e35c3af273171bf01fca +0 -0
  184. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0d/2c47f07277b3ea30b0884f8e3acd68440507c8 +0 -0
  185. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0d/519ca9c2eddc44431efe135d0fc8df00e0b975 +0 -0
  186. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0f/845a0a981bc2f61354fcdd2b6eafe2b2c55c2d +3 -0
  187. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/0f/f4a0357c3d7221a2ef1e4c6b7d5c46d97fe250 +0 -0
  188. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/12/eb889f49f1464b32a51424d7724fb16f6c3a31 +0 -0
  189. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/15/34a65657edf4e5caaa5ce35652dca5e4c7d316 +0 -0
  190. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/15/378a1f3eafe4c5ab4f890883356df917ee5539 +2 -0
  191. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/16/9e6db43d4c09cd610179a7b9826483b4d94123 +0 -0
  192. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/16/d1f96acfd92d09c4f1f56d3441ac55dd30500e +0 -0
  193. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/16/ee5335538f11b4ffcc17b051f8d5db7570a055 +0 -0
  194. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/17/9ef0e0209e90af00f544ff414e0674dfb5f5c7 +0 -0
  195. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/19/9d2f8e60fddd1bb2a1b0bddedde35e5aa8b03f +0 -0
  196. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1c/c8667014381e2788a94777532a788307f38d26 +1 -0
  197. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1c/fcfba04eb4e461e9f930d22f528023ab1ddefc +0 -0
  198. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1d/7be4117ded4534789d85c42ab579644cd3fa12 +0 -0
  199. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1d/9e4767a95047ca5e395714985afaedb186f4cd +1 -0
  200. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1f/09f2edb9c0d9275d15960771b363ca6940fbe3 +0 -0
  201. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/1f/691b879df15cf6742502ffc59833b4a40e7aef +0 -0
  202. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/23/751ef6c1fed1304ae1d07020aa73da6f2b93b0 +1 -0
  203. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/24/5582a71306d7360e40c07cd7d849a1aa14a31e +0 -0
  204. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/26/3e3c527004e7b742ed1f747c1bfb7e11825d7a +0 -0
  205. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/27/c0c003dda3e59ba236f53f6661faaf74432b5c +0 -0
  206. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/29/1b6be488d6abc586d3ee03ca61238766625a75 +0 -0
  207. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2a/f6f7d51b7afdd404a871581ebb3b6ac07fb8cc +0 -0
  208. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2c/ef51480d44dcc262d16be2812c692d940d5f29 +0 -0
  209. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2e/20132e8fd40cb3e82248919a10900d31f1816a +0 -0
  210. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2e/939fd37bbd2da971faa27c3e3de7d5aad40507 +0 -0
  211. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/2f/53e667d1d88e75b3fa300f9ab6e2d8ffd32a15 +0 -0
  212. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/32/4968b9dc40253f2c52a8e3856398c761dea856 +0 -0
  213. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/33/8ecb0183d507498aedb669b796b4f9e8880f00 +0 -0
  214. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/33/edabb4334cbe849a477a0d2893cdb768fa3091 +0 -0
  215. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/34/a566d193dc4702f03149969a2aad1443231560 +1 -0
  216. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/36/fe213c328fd280f33abe00069c4b92eb5a88d1 +0 -0
  217. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/39/66e9fa0e0b9fe9d3ef2fdaa6933f3d0bb82bc3 +0 -0
  218. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3a/9f195756f5bd26b67c5e1fffd92d68d61be14e +2 -0
  219. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3a/ac4b445017a8fc07502670ec2dbf744213dd48 +0 -0
  220. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3b/6eeed9ce43ea893cf48d263da93448edae9f1c +0 -0
  221. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3c/644f22b9b8edb06e7e298ecac8e71b133061f1 +0 -0
  222. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3c/c71b13d906e445da52785ddeff40dad1163d49 +2 -0
  223. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3c/f35bd14cf5f2dd08bbeef8698d700f3a038e5c +0 -0
  224. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/3d/331db92a8ead0565679efb76f328ae69ed1b77 +0 -0
  225. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/44/88516c3c936db58ea485ec2213dab9d13e6628 +0 -0
  226. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/44/987dd95c338fb573726541f270f1a7b55c9d51 +0 -0
  227. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/45/20c29b885e9db9b0df3c7bab7870157e1d00c3 +0 -0
  228. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/45/b983be36b73c0788dc9cbcb76cbb80fc7bb057 +0 -0
  229. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/46/00557506be20eb1501a4f15a52e684d4b9ee61 +0 -0
  230. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/46/a60232117527e7b57ac0dd5ea4af2cd3fdb696 +0 -0
  231. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/47/0f6a87fa51dd25f6db0f4725ae37791d449356 +0 -0
  232. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/47/2650d42fa9454e2e61e3da9f5c158b8af6d298 +0 -0
  233. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/47/8e5ee111572790b248eaa99140c5a8f728abc7 +0 -0
  234. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/48/bbf0db7e813affab7d8dd2842b8455ff9876be +0 -0
  235. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/49/b352299735fda3a333c69c6273178b0c3dfa08 +0 -0
  236. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4a/1e3e4500962c3631a479726bf2e40469594cba +0 -0
  237. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4a/2bee50944e9285e8f82216c9b0b8a7d3cdd315 +0 -0
  238. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4a/4e676afe275afecf23130390fe96d0e6d00057 +0 -0
  239. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4a/de99433ac3e4bcc874cd7de488de29399e9096 +1 -0
  240. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4b/7c90536eaa830d8c1f6ff49a7885b581d6acef +1 -0
  241. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4c/411dc8e6ea6fcba0ed56e84aa7707f881d24c7 +0 -0
  242. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4c/ce9432b2f80461324a61611f6143f8544cd80f +1 -0
  243. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4c/e44a75510cbfe200b131fdbcc56a86f1b2dc08 +0 -0
  244. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4d/35ba97a858072c240d327e3ce30c28b333a1b0 +0 -0
  245. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4d/ff9ef38ef09cbf0e36031bbee22b7cf0c7a8fc +1 -0
  246. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4e/aafb1d843aec4f8f1612d03de46a08c2143ea9 +0 -0
  247. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4e/ebc1b62c53241b7fbf7fb33b5230362595bfdd +0 -0
  248. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/4f/4065121cb78fe6116ae7e3075f5c5a446bd08b +0 -0
  249. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/50/3d77289b054742f507d8a8ce7cc51d3841d5b9 +0 -0
  250. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/52/4038b20b297f40d78e7d83e04e38049457312b +0 -0
  251. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/53/a72df554e585e239e41cb1fc498d5aee9bb164 +0 -0
  252. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/0200385c3b0b299c7a87ecf59ca94c32fbbe99 +0 -0
  253. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/5c81a2e8d1112d5f7356f840a22e8f6abcef8f +2 -0
  254. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/5ffc79786f268524c35e1e05b1770c7c74faf1 +3 -0
  255. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/6bec6f8872efa41d5d97a369f669165ecda0de +0 -0
  256. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/54/7a4bae347658f0d9eed0d35d31b4561aea7cf8 +2 -0
  257. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/56/195ef83e9e20ca75dddef0630633fc8060ed11 +0 -0
  258. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/57/7ddd894033c46a5fcf2c6f3c4e71cc72f86909 +0 -0
  259. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/58/501cbd0fc5ce832f6b34d37243a520dc19a6cc +1 -0
  260. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/58/73a650a91eb238005444d2c637b451f687951b +0 -0
  261. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5a/28efd2fcf55b7b58eb7cc66b5db836155bc2bb +0 -0
  262. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5b/0be7da7cc9ecdb6c2de5f818c30a42fbd2c9fa +1 -0
  263. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5c/16fb8b958b51f6008f9722b279b1fde0defb76 +3 -0
  264. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5d/4606820736043f9eed2a6336661d6892c820a5 +0 -0
  265. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5e/392652a881999392c2757cf9b783c5d47b67f7 +0 -0
  266. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/5e/53019b3238362144c2766f02a2c00d91fcc023 +2 -0
  267. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/62/70c7f48ca41e6fb41b745ddc1bffe521d83194 +2 -0
  268. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/62/7e1097cda3b2e3ad6ba4d3772c0985e1ff349c +0 -0
  269. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/62/bb94c53efae4d53fd0649d129baef4aca87af7 +3 -0
  270. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/62/c9331ffe97bb6388fb7968662b4e97d121e2da +0 -0
  271. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/63/1446ec50808846e31fff786c065e69da2c673b +0 -0
  272. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/64/d0c52ac4c061cf1705e3005dfd86fb70374a14 +0 -0
  273. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/66/80a909b0e02b297bedbe143ef789d297235358 +0 -0
  274. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/6b/790ddc5eab30f18cabdd0513e8f8dac0d2d3ed +0 -0
  275. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/6c/2d312ebd67eed4c7e97e3923b3667764e7360e +0 -0
  276. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/6d/e8fb35c2e4a69addd030f2dbb4f73fd4742b5b +0 -0
  277. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/6e/d281c757a969ffe22f3dcfa5830c532479c726 +0 -0
  278. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/70/714b02913c1a249a5ab05021742f0bc7065df7 +0 -0
  279. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/71/894b736711ea0a5def4f536009364d07ee4db3 +2 -0
  280. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/71/c9a23879ff0ac8c49b92d107f3f89c6d1b2d92 +1 -0
  281. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/73/b171450704ea4350f9f884426389fe04c6cd51 +0 -0
  282. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/74/32b657191a10587335e74ae6f0966a7eed2976 +0 -0
  283. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/79/e5b9e6ee5a1e6c52676a6332fe9163adaa92cb +0 -0
  284. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7c/076f209839d7f910e8c84e41cc94898287ef45 +0 -0
  285. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7c/60c6ab64c74d52f973d18cd1933318a8d9ae2e +0 -0
  286. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7c/ac4f8d519d524ed025732ee220f6451665a770 +0 -0
  287. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7f/5625f6b3c7213287a12c89017361248ed88936 +0 -0
  288. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7f/86d16e0254f64f784198c6a55ef9bf7adbe7ce +0 -0
  289. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/7f/bfee9f8882ada1ec45c4925baf5649d96c4a16 +0 -0
  290. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/81/25fbe8605d2884e732a185c9a24abcc0d12a1f +0 -0
  291. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/81/d4d5e9b6db474d0f432aa31d44bf690d841e94 +0 -0
  292. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/81/f545324202466d44115656ea463a5bb114345f +0 -0
  293. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/82/d331cf4d3d4ee537c4f866cab2633b46a8d090 +0 -0
  294. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/83/c6a1f0d7d8df18a9d9bfe917707aec37868418 +0 -0
  295. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/85/8f46dd7496faf7af72102ca15cccff832b5377 +0 -0
  296. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/87/c56502c73149f006631129f85dff697e000356 +0 -0
  297. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/88/cf23d06f519bec7b824acd52b87a729555f2e7 +0 -0
  298. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8a/3fb747983bf2a7f4ef136af4bfcf7993a19307 +0 -0
  299. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8b/00d915a0ee5aeb32e0b166e1054c2901338c9d +0 -0
  300. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8c/e3ee48a7e7ec697a99ee33700ec624548ad9e8 +0 -0
  301. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8d/ae07ab9d98b5fe04d4d7ed804cc36441b68dab +0 -0
  302. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/8d/c79ae7616abf1e2d4d5d97d566f2b2f6cee043 +0 -0
  303. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/92/4dec9203af851c3b3e564697ab3004b35b3c2f +0 -0
  304. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/93/06c056ba3ef9dca6f6365af38148c71196533a +0 -0
  305. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/93/5badc874edd62a8629aaf103418092c73f0a56 +1 -0
  306. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/94/c827875e2cadb8bc8d4cdd900f19aa9e8634c7 +0 -0
  307. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/95/ef665df6ebd69842c5e74a24cb8a12225dee3e +0 -0
  308. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/98/fb6a686563963b8f7e552d747158adbc1c2bd6 +0 -0
  309. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/99/3dd9b1cdeab53e305886c91dbcbc8929eff22e +1 -0
  310. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9a/e1fbd7636c99d34fdd395cf9bb21ad51417ce7 +1 -0
  311. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9b/5149aa4ace4ef69461803b0ccbb21139e12626 +0 -0
  312. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9d/3ad2f09cb7a1d4f4c91182c96f2be537fbc4ff +0 -0
  313. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9d/6f937544dc3b936d6ee1466d6e216ba18d5686 +0 -0
  314. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/9f/a43bcd45af28e109e6f7b9a6ccd26e8e193a63 +0 -0
  315. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a0/b3f35b3c39cfb12c4cc819bffe1cf54efb3642 +2 -0
  316. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a1/15413501949f4f09811fd1aaecf136c012c7d7 +0 -0
  317. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a1/a3069efcc64330fb6c66004e69b870da3d6186 +0 -0
  318. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a3/62d30d5fe1021cabc4c90f073ba2511d5a43a1 +0 -0
  319. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a3/c1f067074cdc9aa998cb5f3cad46a6f17aab2d +0 -0
  320. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a3/db7143944dcfa006fefe7fb49c48793cb29ade +2 -0
  321. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a4/4a5e945176ff31be83ffca3e7c68a8b6a45ea5 +1 -0
  322. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a5/1546fabf88ddef5a9fd91b3989dd8ccae2edf3 +0 -0
  323. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a6/b25c4b27ee99f93fd611154202af5f9e3c99de +2 -0
  324. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a7/88a1cba299638a2c898fcfaae1f69a1549853d +0 -0
  325. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a8/98e8a6b143188022863bc1cab0b5f7514624ba +0 -0
  326. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a8/b607b221454c4cd7bc7831b2d19712bb4ff888 +0 -0
  327. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a9/e2d9b71b616531f04a65ae5b972ba5d1f2cb93 +0 -0
  328. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/a9/e2f17562ae78a75dc855bb3dc9e87364195dcf +0 -0
  329. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ab/16bc1812fd6226780a841300a2432dfd0c6719 +0 -0
  330. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ac/8f48bbb7b31c945ba6a4fbe6950d009a5d8373 +0 -0
  331. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ae/21cabd23aee99a719fc828977c0df9e8b19363 +0 -0
  332. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b0/3003311ad3fa368b475df58390353868e13c91 +2 -0
  333. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b0/ee249c5e5cc9464f3bc0034ab05632dcb87a23 +0 -0
  334. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b1/288f8beeaa6cf048c3a9f578d4e266fab8820e +0 -0
  335. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b1/5336206c9040f4c52660b3f3c76ee02ccece56 +0 -0
  336. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b1/b18f5bea24648a1b08e5bba88728c15ec3cb50 +2 -0
  337. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b4/5724ee906d2561901208ba924add09ab95ccb3 +0 -0
  338. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b5/d8fc3cb740eb643c66eb5f4a97345fdb806259 +0 -0
  339. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b6/153b8fe540288d66b974ae05113338ab1a61f0 +0 -0
  340. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b6/987bc1201ad19774c43c0ea8078f6f51d76bcb +0 -0
  341. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b6/9e6acd87e5f9114ce6580b095ef1057a8fe5bb +0 -0
  342. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/b9/8f4909807c8c84a1dc1b62b4a339ae1777f369 +3 -0
  343. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ba/492c62b6227d7f3507b4dcc6e6d5f13790eabf +0 -0
  344. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ba/c335cb9dc058a477d04cde34c07d1f70d16fb9 +0 -0
  345. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/bb/0850568bb43049031a38b01ddb60e4a487f823 +0 -0
  346. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/be/b14380ef26540efcad06bedcd0e302b6bce70e +0 -0
  347. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/c1/3142dd26a1f6f38403a17f6c411cb621b9a1cd +0 -0
  348. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/c1/8b4e9b0829411705d7fa9a1570a20d88780817 +0 -0
  349. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/c5/a3fdb33f052b8f17dac83c533b62244226f4ba +0 -0
  350. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/c6/567e2feccce3893ae0aaac2bf97807338aa8d4 +0 -0
  351. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cb/45eef6fa1ad913137d91c6b81d2b42d69094a6 +0 -0
  352. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cd/0d59357b36a447ff27a7c176b46e0a319b42df +0 -0
  353. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cd/4291452a61ff8b57cf5510addc8ddc5630748e +0 -0
  354. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cf/7135368cc3bf4920ceeaeebd083e098cfad355 +4 -0
  355. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/cf/b9952c3a28831144a0fac7ea5a2d8517f466c4 +0 -0
  356. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d0/0491fd7e5bb6fa28c517a0bb32b8b506539d4d +0 -0
  357. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d1/4cbc09cc34fb6450b2e96432102be51c8292b8 +0 -0
  358. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d3/d171221e87a30e059d638f155f899595d96b71 +0 -0
  359. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d5/b9587b65731e25216743b0caca72051a760211 +2 -0
  360. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d6/a3aab3e38bc16688b4e636a91e462434210878 +0 -0
  361. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d6/f31c35d7e010e50568c0d605227028aa7bac66 +0 -0
  362. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d7/875788aeafdd8e317880c00e3372f683cad91e +0 -0
  363. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d7/d8a71a719e2a4ca501991a66dab47df804f6ad +0 -0
  364. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/d7/e844eec32d74a3d37c4ce02d7138658e1035d6 +0 -0
  365. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/da/597fb7fba247a5b59d917e90342cf4b9695905 +0 -0
  366. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/da/7b788b1575936a4381050610a37737c70b55a0 +1 -0
  367. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/de/996da0ef3dcee1a28aef9243aa3e255eb825b5 +0 -0
  368. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/de/d54b45e4d49816f6d4256e74d45ba2bb351357 +0 -0
  369. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e3/6f723934fd1d67c7d21538751f0b1e941141db +0 -0
  370. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e3/ebef76525fe9e6e8dc739934a08512dff777c0 +0 -0
  371. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e5/0fa6835cb99747346f19fea5f1ba939da4205f +2 -0
  372. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e5/650a5c9c4b5a4415195bfb01d4d8dccbc8221b +0 -0
  373. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e5/76bdfc9ed4627ac954f9390cf7a6151ad2a73e +0 -0
  374. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
  375. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e7/ea5938f9c009d32235050bca991d0b9533e440 +0 -0
  376. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e8/183f05f5db68b3934e93f4bf6bed2bb664e0b5 +0 -0
  377. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e8/bd03b163f82fba4560c11839d49361a78dec85 +0 -0
  378. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/e9/0de8268373e4fd5ab13310b7745d47ec16813c +0 -0
  379. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ec/16a327a6a98367d03369b4e998baf3db379313 +0 -0
  380. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ec/1e3d44e160e18dbfbaa80b5b0780ccc03e678e +0 -0
  381. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/ed/551aa66cf0c6f1a078832f80899faff0ae88dc +0 -0
  382. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f1/25480ee106989ec4d86554c0d5a1487ad4336a +1 -0
  383. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f1/410f8735f6f73d3599eb9b5cdd2fb70373335c +3 -0
  384. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f2/02cb755135d4263589602783b04fb32a079d88 +0 -0
  385. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f2/ff401fb3fc81f8abb3ca15247aadc1e22b6288 +0 -0
  386. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f5/501de98279c6454f510188873476f3ead0cee6 +4 -0
  387. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f7/5f313ca30e534aa9c42463e85108e682d3a14a +0 -0
  388. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f8/e9c6748331411c0d3511f90bd4e0a1a30acff0 +0 -0
  389. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/f9/bce8995109cfab475d043a7dd9156d5e574ed3 +0 -0
  390. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/fa/6312f71abb153ada6a0399ad710d21bb61e4d8 +0 -0
  391. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/fb/8e78840d79085abf50edebf5b9d6b73ee0fb4c +0 -0
  392. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/fc/b49fa99454f804799a12095292edbca48779ab +0 -0
  393. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/objects/fe/b2ccf88397c2d93f381176067be2727eba330b +0 -0
  394. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/git_grep +1 -0
  395. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/master +1 -0
  396. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/test +1 -0
  397. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/test_branches +1 -0
  398. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/heads/test_object +1 -0
  399. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/remotes/working/master +1 -0
  400. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/gitsearch1 +1 -0
  401. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/v2.5 +1 -0
  402. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/v2.6 +1 -0
  403. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/v2.7 +1 -0
  404. data/plugins/scm_git/vendor/ruby-git/tests/files/working/dot_git/refs/tags/v2.8 +1 -0
  405. data/plugins/scm_git/vendor/ruby-git/tests/files/working/ex_dir/ex.txt +0 -0
  406. data/plugins/scm_git/vendor/ruby-git/tests/files/working/example.txt +1 -0
  407. data/plugins/scm_git/vendor/ruby-git/tests/files/working/scott/newfile +1 -0
  408. data/plugins/scm_git/vendor/ruby-git/tests/files/working/scott/text.txt +8 -0
  409. data/plugins/scm_git/vendor/ruby-git/tests/test_helper.rb +67 -0
  410. data/plugins/scm_git/vendor/ruby-git/tests/units/test_archive.rb +55 -0
  411. data/plugins/scm_git/vendor/ruby-git/tests/units/test_bare.rb +41 -0
  412. data/plugins/scm_git/vendor/ruby-git/tests/units/test_branch.rb +92 -0
  413. data/plugins/scm_git/vendor/ruby-git/tests/units/test_config.rb +31 -0
  414. data/plugins/scm_git/vendor/ruby-git/tests/units/test_diff.rb +88 -0
  415. data/plugins/scm_git/vendor/ruby-git/tests/units/test_each_conflict.rb +49 -0
  416. data/plugins/scm_git/vendor/ruby-git/tests/units/test_git_path.rb +45 -0
  417. data/plugins/scm_git/vendor/ruby-git/tests/units/test_index_ops.rb +94 -0
  418. data/plugins/scm_git/vendor/ruby-git/tests/units/test_init.rb +75 -0
  419. data/plugins/scm_git/vendor/ruby-git/tests/units/test_lib.rb +168 -0
  420. data/plugins/scm_git/vendor/ruby-git/tests/units/test_log.rb +69 -0
  421. data/plugins/scm_git/vendor/ruby-git/tests/units/test_logger.rb +38 -0
  422. data/plugins/scm_git/vendor/ruby-git/tests/units/test_merge.rb +104 -0
  423. data/plugins/scm_git/vendor/ruby-git/tests/units/test_object.rb +138 -0
  424. data/plugins/scm_git/vendor/ruby-git/tests/units/test_remotes.rb +85 -0
  425. data/plugins/scm_git/vendor/ruby-git/tests/units/test_repack.rb +30 -0
  426. data/plugins/scm_git/vendor/ruby-git/tests/units/test_stashes.rb +36 -0
  427. data/plugins/scm_git/vendor/ruby-git/tests/units/test_tags.rb +35 -0
  428. data/plugins/scm_git/vendor/ruby-git/tests/units/test_tree_ops.rb +121 -0
  429. data/plugins/scm_hg/lib/scm_hg.rb +30 -0
  430. data/plugins/scm_hg/plugin.rb +7 -0
  431. data/plugins/scm_svn/lib/scm_svn.rb +30 -0
  432. data/plugins/scm_svn/plugin.rb +7 -0
  433. data/plugins/strip_trailing_spaces/lib/strip_trailing_spaces.rb +10 -5
  434. data/plugins/textmate/ATTRIBUTION +4 -0
  435. data/plugins/textmate/features/bundle_tree.feature +23 -0
  436. data/plugins/textmate/features/step_definitions/tree_steps.rb +57 -0
  437. data/plugins/textmate/features/support/env.rb +19 -0
  438. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/If.tmSnippet +18 -0
  439. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/If__Else.tmSnippet +20 -0
  440. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Include.tmSnippet +16 -0
  441. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Loop.tmSnippet +18 -0
  442. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Unless.tmSnippet +18 -0
  443. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Var.tmSnippet +16 -0
  444. data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/next_If__Else.tmSnippet +20 -0
  445. data/plugins/textmate/features/support/test_bundle.tmbundle/info.plist +26 -0
  446. data/plugins/textmate/icons/document-snippet.png +0 -0
  447. data/plugins/textmate/icons/tree_mode.gif +0 -0
  448. data/plugins/textmate/icons/ui-menu-blue.png +0 -0
  449. data/plugins/textmate/lib/textmate.rb +82 -27
  450. data/plugins/textmate/lib/textmate/bundle.rb +32 -28
  451. data/plugins/textmate/lib/textmate/commands.rb +79 -0
  452. data/plugins/textmate/lib/textmate/tree_mirror.rb +205 -0
  453. data/plugins/todo_list/README.md +22 -0
  454. data/plugins/todo_list/lib/todo_list.rb +41 -0
  455. data/plugins/todo_list/lib/todo_list/file_parser.rb +54 -0
  456. data/plugins/todo_list/lib/todo_list/todo_controller.rb +137 -0
  457. data/plugins/todo_list/plugin.rb +11 -0
  458. data/plugins/todo_list/views/index.html.erb +22 -0
  459. data/plugins/tree_view_swt/lib/tree_view_swt.rb +3 -1
  460. metadata +4595 -4174
@@ -0,0 +1,53 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{git}
8
+ s.version = "1.2.5"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Scott Chacon"]
12
+ s.date = %q{2009-10-17}
13
+ s.email = %q{schacon@gmail.com}
14
+ s.extra_rdoc_files = [
15
+ "README"
16
+ ]
17
+ s.files = [
18
+ "lib/git.rb",
19
+ "lib/git/author.rb",
20
+ "lib/git/base.rb",
21
+ "lib/git/branch.rb",
22
+ "lib/git/branches.rb",
23
+ "lib/git/diff.rb",
24
+ "lib/git/index.rb",
25
+ "lib/git/lib.rb",
26
+ "lib/git/log.rb",
27
+ "lib/git/object.rb",
28
+ "lib/git/path.rb",
29
+ "lib/git/remote.rb",
30
+ "lib/git/repository.rb",
31
+ "lib/git/stash.rb",
32
+ "lib/git/stashes.rb",
33
+ "lib/git/status.rb",
34
+ "lib/git/working_directory.rb"
35
+ ]
36
+ s.homepage = %q{http://github.com/schacon/ruby-git}
37
+ s.rdoc_options = ["--charset=UTF-8"]
38
+ s.require_paths = ["lib"]
39
+ s.requirements = ["git 1.6.0.0, or greater"]
40
+ s.rubyforge_project = %q{git}
41
+ s.rubygems_version = %q{1.3.5}
42
+ s.summary = %q{Ruby/Git is a Ruby library that can be used to create, read and manipulate Git repositories by wrapping system calls to the git binary}
43
+
44
+ if s.respond_to? :specification_version then
45
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
46
+ s.specification_version = 3
47
+
48
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
49
+ else
50
+ end
51
+ else
52
+ end
53
+ end
@@ -0,0 +1,156 @@
1
+
2
+ # Add the directory containing this file to the start of the load path if it
3
+ # isn't there already.
4
+ $:.unshift(File.dirname(__FILE__)) unless
5
+ $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
6
+
7
+ require 'git/base'
8
+ require 'git/path'
9
+ require 'git/lib'
10
+
11
+ require 'git/repository'
12
+ require 'git/index'
13
+ require 'git/working_directory'
14
+
15
+ require 'git/log'
16
+ require 'git/object'
17
+
18
+ require 'git/branches'
19
+ require 'git/branch'
20
+ require 'git/remote'
21
+
22
+ require 'git/diff'
23
+ require 'git/status'
24
+ require 'git/author'
25
+
26
+ require 'git/stashes'
27
+ require 'git/stash'
28
+
29
+ lib = Git::Lib.new(nil, nil)
30
+ unless lib.meets_required_version?
31
+ $stderr.puts "[WARNING] The git gem requires git #{lib.required_command_version.join('.')} or later, but only found #{lib.current_command_version.join('.')}. You should probably upgrade."
32
+ end
33
+
34
+ # Git/Ruby Library
35
+ #
36
+ # This provides bindings for working with git in complex
37
+ # interactions, including branching and merging, object
38
+ # inspection and manipulation, history, patch generation
39
+ # and more. You should be able to do most fundamental git
40
+ # operations with this library.
41
+ #
42
+ # This module provides the basic functions to open a git
43
+ # reference to work with. You can open a working directory,
44
+ # open a bare repository, initialize a new repo or clone an
45
+ # existing remote repository.
46
+ #
47
+ # Author:: Scott Chacon (mailto:schacon@gmail.com)
48
+ # License:: MIT License
49
+ module Git
50
+
51
+ VERSION = '1.0.4'
52
+
53
+ # open a bare repository
54
+ #
55
+ # this takes the path to a bare git repo
56
+ # it expects not to be able to use a working directory
57
+ # so you can't checkout stuff, commit things, etc.
58
+ # but you can do most read operations
59
+ def self.bare(git_dir, options = {})
60
+ Base.bare(git_dir, options)
61
+ end
62
+
63
+ # open an existing git working directory
64
+ #
65
+ # this will most likely be the most common way to create
66
+ # a git reference, referring to a working directory.
67
+ # if not provided in the options, the library will assume
68
+ # your git_dir and index are in the default place (.git/, .git/index)
69
+ #
70
+ # options
71
+ # :repository => '/path/to/alt_git_dir'
72
+ # :index => '/path/to/alt_index_file'
73
+ def self.open(working_dir, options = {})
74
+ Base.open(working_dir, options)
75
+ end
76
+
77
+ # initialize a new git repository, defaults to the current working directory
78
+ #
79
+ # options
80
+ # :repository => '/path/to/alt_git_dir'
81
+ # :index => '/path/to/alt_index_file'
82
+ def self.init(working_dir = '.', options = {})
83
+ Base.init(working_dir, options)
84
+ end
85
+
86
+ # clones a remote repository
87
+ #
88
+ # options
89
+ # :bare => true (does a bare clone)
90
+ # :repository => '/path/to/alt_git_dir'
91
+ # :index => '/path/to/alt_index_file'
92
+ #
93
+ # example
94
+ # Git.clone('git://repo.or.cz/rubygit.git', 'clone.git', :bare => true)
95
+ #
96
+ def self.clone(repository, name, options = {})
97
+ Base.clone(repository, name, options)
98
+ end
99
+
100
+ # Export the current HEAD (or a branch, if <tt>options[:branch]</tt>
101
+ # is specified) into the +name+ directory, then remove all traces of git from the
102
+ # directory.
103
+ #
104
+ # See +clone+ for options. Does not obey the <tt>:remote</tt> option,
105
+ # since the .git info will be deleted anyway; always uses the default
106
+ # remote, 'origin.'
107
+ def self.export(repository, name, options = {})
108
+ options.delete(:remote)
109
+ repo = clone(repository, name, {:depth => 1}.merge(options))
110
+ repo.checkout("origin/#{options[:branch]}") if options[:branch]
111
+ Dir.chdir(repo.dir.to_s) { FileUtils.rm_r '.git' }
112
+ end
113
+
114
+ #g.config('user.name', 'Scott Chacon') # sets value
115
+ #g.config('user.email', 'email@email.com') # sets value
116
+ #g.config('user.name') # returns 'Scott Chacon'
117
+ #g.config # returns whole config hash
118
+ def config(name = nil, value = nil)
119
+ lib = Git::Lib.new
120
+ if(name && value)
121
+ # set value
122
+ lib.config_set(name, value)
123
+ elsif (name)
124
+ # return value
125
+ lib.config_get(name)
126
+ else
127
+ # return hash
128
+ lib.config_list
129
+ end
130
+ end
131
+
132
+ # Same as g.config, but forces it to be at the global level
133
+ #
134
+ #g.config('user.name', 'Scott Chacon') # sets value
135
+ #g.config('user.email', 'email@email.com') # sets value
136
+ #g.config('user.name') # returns 'Scott Chacon'
137
+ #g.config # returns whole config hash
138
+ def self.global_config(name = nil, value = nil)
139
+ lib = Git::Lib.new(nil, nil)
140
+ if(name && value)
141
+ # set value
142
+ lib.global_config_set(name, value)
143
+ elsif (name)
144
+ # return value
145
+ lib.global_config_get(name)
146
+ else
147
+ # return hash
148
+ lib.global_config_list
149
+ end
150
+ end
151
+
152
+ def global_config(name = nil, value = nil)
153
+ self.class.global_config(name, value)
154
+ end
155
+
156
+ end
@@ -0,0 +1,14 @@
1
+ module Git
2
+ class Author
3
+ attr_accessor :name, :email, :date
4
+
5
+ def initialize(author_string)
6
+ if m = /(.*?) <(.*?)> (\d+) (.*)/.match(author_string)
7
+ @name = m[1]
8
+ @email = m[2]
9
+ @date = Time.at(m[3].to_i)
10
+ end
11
+ end
12
+
13
+ end
14
+ end
@@ -0,0 +1,479 @@
1
+ module Git
2
+
3
+ class Base
4
+
5
+ # opens a bare Git Repository - no working directory options
6
+ def self.bare(git_dir, opts = {})
7
+ self.new({:repository => git_dir}.merge(opts))
8
+ end
9
+
10
+ # opens a new Git Project from a working directory
11
+ # you can specify non-standard git_dir and index file in the options
12
+ def self.open(working_dir, opts={})
13
+ self.new({:working_directory => working_dir}.merge(opts))
14
+ end
15
+
16
+ # initializes a git repository
17
+ #
18
+ # options:
19
+ # :repository
20
+ # :index_file
21
+ #
22
+ def self.init(working_dir, opts = {})
23
+ opts = {
24
+ :working_directory => working_dir,
25
+ :repository => File.join(working_dir, '.git')
26
+ }.merge(opts)
27
+
28
+ FileUtils.mkdir_p(opts[:working_directory]) if opts[:working_directory] && !File.directory?(opts[:working_directory])
29
+
30
+ # run git_init there
31
+ Git::Lib.new(opts).init
32
+
33
+ self.new(opts)
34
+ end
35
+
36
+ # clones a git repository locally
37
+ #
38
+ # repository - http://repo.or.cz/w/sinatra.git
39
+ # name - sinatra
40
+ #
41
+ # options:
42
+ # :repository
43
+ #
44
+ # :bare
45
+ # or
46
+ # :working_directory
47
+ # :index_file
48
+ #
49
+ def self.clone(repository, name, opts = {})
50
+ # run git-clone
51
+ self.new(Git::Lib.new.clone(repository, name, opts))
52
+ end
53
+
54
+ def initialize(options = {})
55
+ if working_dir = options[:working_directory]
56
+ options[:repository] ||= File.join(working_dir, '.git')
57
+ options[:index] ||= File.join(working_dir, '.git', 'index')
58
+ end
59
+ if options[:log]
60
+ @logger = options[:log]
61
+ @logger.info("Starting Git")
62
+ else
63
+ @logger = nil
64
+ end
65
+
66
+ @working_directory = options[:working_directory] ? Git::WorkingDirectory.new(options[:working_directory]) : nil
67
+ @repository = options[:repository] ? Git::Repository.new(options[:repository]) : nil
68
+ @index = options[:index] ? Git::Index.new(options[:index], false) : nil
69
+ end
70
+
71
+
72
+ # returns a reference to the working directory
73
+ # @git.dir.path
74
+ # @git.dir.writeable?
75
+ def dir
76
+ @working_directory
77
+ end
78
+
79
+ # returns reference to the git repository directory
80
+ # @git.dir.path
81
+ def repo
82
+ @repository
83
+ end
84
+
85
+ # returns reference to the git index file
86
+ def index
87
+ @index
88
+ end
89
+
90
+
91
+ def set_working(work_dir, check = true)
92
+ @lib = nil
93
+ @working_directory = Git::WorkingDirectory.new(work_dir.to_s, check)
94
+ end
95
+
96
+ def set_index(index_file, check = true)
97
+ @lib = nil
98
+ @index = Git::Index.new(index_file.to_s, check)
99
+ end
100
+
101
+ # changes current working directory for a block
102
+ # to the git working directory
103
+ #
104
+ # example
105
+ # @git.chdir do
106
+ # # write files
107
+ # @git.add
108
+ # @git.commit('message')
109
+ # end
110
+ def chdir # :yields: the Git::Path
111
+ Dir.chdir(dir.path) do
112
+ yield dir.path
113
+ end
114
+ end
115
+
116
+ # returns the repository size in bytes
117
+ def repo_size
118
+ size = 0
119
+ Dir.chdir(repo.path) do
120
+ (size, dot) = `du -s`.chomp.split
121
+ end
122
+ size.to_i
123
+ end
124
+
125
+ #g.config('user.name', 'Scott Chacon') # sets value
126
+ #g.config('user.email', 'email@email.com') # sets value
127
+ #g.config('user.name') # returns 'Scott Chacon'
128
+ #g.config # returns whole config hash
129
+ def config(name = nil, value = nil)
130
+ if(name && value)
131
+ # set value
132
+ lib.config_set(name, value)
133
+ elsif (name)
134
+ # return value
135
+ lib.config_get(name)
136
+ else
137
+ # return hash
138
+ lib.config_list
139
+ end
140
+ end
141
+
142
+ # factory methods
143
+
144
+ # returns a Git::Object of the appropriate type
145
+ # you can also call @git.gtree('tree'), but that's
146
+ # just for readability. If you call @git.gtree('HEAD') it will
147
+ # still return a Git::Object::Commit object.
148
+ #
149
+ # @git.object calls a factory method that will run a rev-parse
150
+ # on the objectish and determine the type of the object and return
151
+ # an appropriate object for that type
152
+ def object(objectish)
153
+ Git::Object.new(self, objectish)
154
+ end
155
+
156
+ def gtree(objectish)
157
+ Git::Object.new(self, objectish, 'tree')
158
+ end
159
+
160
+ def gcommit(objectish)
161
+ Git::Object.new(self, objectish, 'commit')
162
+ end
163
+
164
+ def gblob(objectish)
165
+ Git::Object.new(self, objectish, 'blob')
166
+ end
167
+
168
+ # returns a Git::Log object with count commits
169
+ def log(count = 30)
170
+ Git::Log.new(self, count)
171
+ end
172
+
173
+ # returns a Git::Status object
174
+ def status
175
+ Git::Status.new(self)
176
+ end
177
+
178
+ # returns a Git::Branches object of all the Git::Branch objects for this repo
179
+ def branches
180
+ Git::Branches.new(self)
181
+ end
182
+
183
+ # returns a Git::Branch object for branch_name
184
+ def branch(branch_name = 'master')
185
+ Git::Branch.new(self, branch_name)
186
+ end
187
+
188
+ # returns +true+ if the branch exists locally
189
+ def is_local_branch?(branch)
190
+ branch_names = self.branches.local.map {|b| b.name}
191
+ branch_names.include?(branch)
192
+ end
193
+
194
+ # returns +true+ if the branch exists remotely
195
+ def is_remote_branch?(branch)
196
+ branch_names = self.branches.local.map {|b| b.name}
197
+ branch_names.include?(branch)
198
+ end
199
+
200
+ # returns +true+ if the branch exists
201
+ def is_branch?(branch)
202
+ branch_names = self.branches.map {|b| b.name}
203
+ branch_names.include?(branch)
204
+ end
205
+
206
+ # returns a Git::Remote object
207
+ def remote(remote_name = 'origin')
208
+ Git::Remote.new(self, remote_name)
209
+ end
210
+
211
+ # this is a convenience method for accessing the class that wraps all the
212
+ # actual 'git' forked system calls. At some point I hope to replace the Git::Lib
213
+ # class with one that uses native methods or libgit C bindings
214
+ def lib
215
+ @lib ||= Git::Lib.new(self, @logger)
216
+ end
217
+
218
+ # will run a grep for 'string' on the HEAD of the git repository
219
+ #
220
+ # to be more surgical in your grep, you can call grep() off a specific
221
+ # git object. for example:
222
+ #
223
+ # @git.object("v2.3").grep('TODO')
224
+ #
225
+ # in any case, it returns a hash of arrays of the type:
226
+ # hsh[tree-ish] = [[line_no, match], [line_no, match2]]
227
+ # hsh[tree-ish] = [[line_no, match], [line_no, match2]]
228
+ #
229
+ # so you might use it like this:
230
+ #
231
+ # @git.grep("TODO").each do |sha, arr|
232
+ # puts "in blob #{sha}:"
233
+ # arr.each do |match|
234
+ # puts "\t line #{match[0]}: '#{match[1]}'"
235
+ # end
236
+ # end
237
+ def grep(string, path_limiter = nil, opts = {})
238
+ self.object('HEAD').grep(string, path_limiter, opts)
239
+ end
240
+
241
+ # returns a Git::Diff object
242
+ def diff(objectish = 'HEAD', obj2 = nil)
243
+ Git::Diff.new(self, objectish, obj2)
244
+ end
245
+
246
+ # adds files from the working directory to the git repository
247
+ def add(path = '.')
248
+ self.lib.add(path)
249
+ end
250
+
251
+ # removes file(s) from the git repository
252
+ def remove(path = '.', opts = {})
253
+ self.lib.remove(path, opts)
254
+ end
255
+
256
+ # resets the working directory to the provided commitish
257
+ def reset(commitish = nil, opts = {})
258
+ self.lib.reset(commitish, opts)
259
+ end
260
+
261
+ # resets the working directory to the commitish with '--hard'
262
+ def reset_hard(commitish = nil, opts = {})
263
+ opts = {:hard => true}.merge(opts)
264
+ self.lib.reset(commitish, opts)
265
+ end
266
+
267
+ # commits all pending changes in the index file to the git repository
268
+ #
269
+ # options:
270
+ # :add_all
271
+ # :allow_empty
272
+ # :author
273
+ def commit(message, opts = {})
274
+ self.lib.commit(message, opts)
275
+ end
276
+
277
+ # commits all pending changes in the index file to the git repository,
278
+ # but automatically adds all modified files without having to explicitly
279
+ # calling @git.add() on them.
280
+ def commit_all(message, opts = {})
281
+ opts = {:add_all => true}.merge(opts)
282
+ self.lib.commit(message, opts)
283
+ end
284
+
285
+ # checks out a branch as the new git working directory
286
+ def checkout(branch = 'master', opts = {})
287
+ self.lib.checkout(branch, opts)
288
+ end
289
+
290
+ # checks out an old version of a file
291
+ def checkout_file(version, file)
292
+ self.lib.checkout_file(version,file)
293
+ end
294
+
295
+ # fetches changes from a remote branch - this does not modify the working directory,
296
+ # it just gets the changes from the remote if there are any
297
+ def fetch(remote = 'origin')
298
+ self.lib.fetch(remote)
299
+ end
300
+
301
+ # pushes changes to a remote repository - easiest if this is a cloned repository,
302
+ # otherwise you may have to run something like this first to setup the push parameters:
303
+ #
304
+ # @git.config('remote.remote-name.push', 'refs/heads/master:refs/heads/master')
305
+ #
306
+ def push(remote = 'origin', branch = 'master', tags = false)
307
+ self.lib.push(remote, branch, tags)
308
+ end
309
+
310
+ # merges one or more branches into the current working branch
311
+ #
312
+ # you can specify more than one branch to merge by passing an array of branches
313
+ def merge(branch, message = 'merge')
314
+ self.lib.merge(branch, message)
315
+ end
316
+
317
+ # iterates over the files which are unmerged
318
+ def each_conflict(&block) # :yields: file, your_version, their_version
319
+ self.lib.conflicts(&block)
320
+ end
321
+
322
+ # fetches a branch from a remote and merges it into the current working branch
323
+ def pull(remote = 'origin', branch = 'master', message = 'origin pull')
324
+ fetch(remote)
325
+ merge(branch, message)
326
+ end
327
+
328
+ # returns an array of Git:Remote objects
329
+ def remotes
330
+ self.lib.remotes.map { |r| Git::Remote.new(self, r) }
331
+ end
332
+
333
+ # adds a new remote to this repository
334
+ # url can be a git url or a Git::Base object if it's a local reference
335
+ #
336
+ # @git.add_remote('scotts_git', 'git://repo.or.cz/rubygit.git')
337
+ # @git.fetch('scotts_git')
338
+ # @git.merge('scotts_git/master')
339
+ #
340
+ def add_remote(name, url, opts = {})
341
+ url = url.repo.path if url.is_a?(Git::Base)
342
+ self.lib.remote_add(name, url, opts)
343
+ Git::Remote.new(self, name)
344
+ end
345
+
346
+ # returns an array of all Git::Tag objects for this repository
347
+ def tags
348
+ self.lib.tags.map { |r| tag(r) }
349
+ end
350
+
351
+ # returns a Git::Tag object
352
+ def tag(tag_name)
353
+ Git::Object.new(self, tag_name, 'tag', true)
354
+ end
355
+
356
+ # creates a new git tag (Git::Tag)
357
+ def add_tag(tag_name)
358
+ self.lib.tag(tag_name)
359
+ tag(tag_name)
360
+ end
361
+
362
+ # creates an archive file of the given tree-ish
363
+ def archive(treeish, file = nil, opts = {})
364
+ self.object(treeish).archive(file, opts)
365
+ end
366
+
367
+ # repacks the repository
368
+ def repack
369
+ self.lib.repack
370
+ end
371
+
372
+ def gc
373
+ self.lib.gc
374
+ end
375
+
376
+ def apply(file)
377
+ if File.exists?(file)
378
+ self.lib.apply(file)
379
+ end
380
+ end
381
+
382
+ def apply_mail(file)
383
+ self.lib.apply_mail(file) if File.exists?(file)
384
+ end
385
+
386
+ ## LOWER LEVEL INDEX OPERATIONS ##
387
+
388
+ def with_index(new_index) # :yields: new_index
389
+ old_index = @index
390
+ set_index(new_index, false)
391
+ return_value = yield @index
392
+ set_index(old_index)
393
+ return_value
394
+ end
395
+
396
+ def with_temp_index &blk
397
+ tempfile = Tempfile.new('temp-index')
398
+ temp_path = tempfile.path
399
+ tempfile.unlink
400
+ with_index(temp_path, &blk)
401
+ end
402
+
403
+ def checkout_index(opts = {})
404
+ self.lib.checkout_index(opts)
405
+ end
406
+
407
+ def read_tree(treeish, opts = {})
408
+ self.lib.read_tree(treeish, opts)
409
+ end
410
+
411
+ def write_tree
412
+ self.lib.write_tree
413
+ end
414
+
415
+ def commit_tree(tree = nil, opts = {})
416
+ Git::Object::Commit.new(self, self.lib.commit_tree(tree, opts))
417
+ end
418
+
419
+ def write_and_commit_tree(opts = {})
420
+ tree = write_tree
421
+ commit_tree(tree, opts)
422
+ end
423
+
424
+ def update_ref(branch, commit)
425
+ branch(branch).update_ref(commit)
426
+ end
427
+
428
+
429
+ def ls_files(location=nil)
430
+ self.lib.ls_files(location)
431
+ end
432
+
433
+ def with_working(work_dir) # :yields: the Git::WorkingDirectory
434
+ return_value = false
435
+ old_working = @working_directory
436
+ set_working(work_dir)
437
+ Dir.chdir work_dir do
438
+ return_value = yield @working_directory
439
+ end
440
+ set_working(old_working)
441
+ return_value
442
+ end
443
+
444
+ def with_temp_working &blk
445
+ tempfile = Tempfile.new("temp-workdir")
446
+ temp_dir = tempfile.path
447
+ tempfile.unlink
448
+ Dir.mkdir(temp_dir, 0700)
449
+ with_working(temp_dir, &blk)
450
+ end
451
+
452
+
453
+ # runs git rev-parse to convert the objectish to a full sha
454
+ #
455
+ # @git.revparse("HEAD^^")
456
+ # @git.revparse('v2.4^{tree}')
457
+ # @git.revparse('v2.4:/doc/index.html')
458
+ #
459
+ def revparse(objectish)
460
+ self.lib.revparse(objectish)
461
+ end
462
+
463
+ def ls_tree(objectish)
464
+ self.lib.ls_tree(objectish)
465
+ end
466
+
467
+ def cat_file(objectish)
468
+ self.lib.object_contents(objectish)
469
+ end
470
+
471
+ # returns the name of the branch the working directory is currently on
472
+ def current_branch
473
+ self.lib.branch_current
474
+ end
475
+
476
+
477
+ end
478
+
479
+ end