eac_tools 0.101.2 → 0.101.3

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 (342) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +35 -35
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/eac_git/eac_git.gemspec +20 -0
  5. data/sub/eac_git/lib/eac_git/executables.rb +45 -0
  6. data/sub/eac_git/lib/eac_git/local/branch.rb +45 -0
  7. data/sub/eac_git/lib/eac_git/local/changed_file.rb +53 -0
  8. data/sub/eac_git/lib/eac_git/local/commit/archive.rb +17 -0
  9. data/sub/eac_git/lib/eac_git/local/commit/changed_file.rb +43 -0
  10. data/sub/{avm-git/lib/avm/git → eac_git/lib/eac_git/local}/commit/diff_tree_line.rb +2 -2
  11. data/sub/eac_git/lib/eac_git/local/commit.rb +71 -0
  12. data/sub/eac_git/lib/eac_git/local/dirty_files.rb +26 -0
  13. data/sub/eac_git/lib/eac_git/local/log.rb +14 -0
  14. data/sub/eac_git/lib/eac_git/local/remote/push.rb +33 -0
  15. data/sub/eac_git/lib/eac_git/local/remote.rb +47 -0
  16. data/sub/eac_git/lib/eac_git/local/remotes.rb +17 -0
  17. data/sub/eac_git/lib/eac_git/local/subrepo/config.rb +40 -0
  18. data/sub/eac_git/lib/eac_git/local/subrepo.rb +46 -0
  19. data/sub/eac_git/lib/eac_git/local.rb +124 -0
  20. data/sub/eac_git/lib/eac_git/remote.rb +20 -0
  21. data/sub/eac_git/lib/eac_git/remote_like/ls_result.rb +18 -0
  22. data/sub/eac_git/lib/eac_git/remote_like.rb +30 -0
  23. data/sub/eac_git/lib/eac_git/rspec/setup.rb +20 -0
  24. data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo/directory.rb +35 -0
  25. data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo/file.rb +21 -0
  26. data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo/fs_object.rb +25 -0
  27. data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo/repository.rb +30 -0
  28. data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo.rb +28 -0
  29. data/sub/eac_git/lib/eac_git/rspec.rb +7 -0
  30. data/sub/eac_git/lib/eac_git/version.rb +5 -0
  31. data/sub/eac_git/lib/eac_git.rb +9 -0
  32. data/sub/eac_git/spec/lib/eac_git/executables_spec.rb +11 -0
  33. data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec.rb +1 -3
  34. data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit_spec.rb +10 -10
  35. data/sub/eac_git/spec/lib/eac_git/local/dirty_files_spec.rb +18 -0
  36. data/sub/{avm-git → eac_git}/spec/spec_helper.rb +2 -2
  37. data/sub/eac_git/vendor/git-subrepo/Changes +110 -0
  38. data/sub/eac_git/vendor/git-subrepo/Intro.pod +509 -0
  39. data/sub/eac_git/vendor/git-subrepo/License +21 -0
  40. data/sub/eac_git/vendor/git-subrepo/Makefile +82 -0
  41. data/sub/eac_git/vendor/git-subrepo/Meta +28 -0
  42. data/sub/eac_git/vendor/git-subrepo/ReadMe.pod +698 -0
  43. data/sub/eac_git/vendor/git-subrepo/doc/comparison.swim +35 -0
  44. data/sub/eac_git/vendor/git-subrepo/doc/git-subrepo.swim +608 -0
  45. data/sub/eac_git/vendor/git-subrepo/doc/intro-to-subrepo.swim +387 -0
  46. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/Changes +15 -0
  47. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/License +21 -0
  48. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/Makefile +45 -0
  49. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/Meta +28 -0
  50. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/ReadMe.pod +77 -0
  51. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/bin/bash+ +43 -0
  52. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/doc/bash+.swim +61 -0
  53. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/lib/bash+.bash +92 -0
  54. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/man/man1/bash+.1 +134 -0
  55. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/man/man3/bash+.3 +134 -0
  56. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/base.t +12 -0
  57. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/fcopy.t +22 -0
  58. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/lib/foo/bar.bash +3 -0
  59. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/lib/foo/foo.bash +3 -0
  60. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/source-bash+-std.t +18 -0
  61. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/source-bash+.t +23 -0
  62. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/test.bash +70 -0
  63. data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/use.t +19 -0
  64. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/Changes +15 -0
  65. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/License +21 -0
  66. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/Makefile +20 -0
  67. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/Meta +30 -0
  68. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ReadMe.pod +115 -0
  69. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/doc/test-more.swim +89 -0
  70. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Changes +15 -0
  71. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/License +21 -0
  72. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Makefile +45 -0
  73. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Meta +28 -0
  74. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/ReadMe.pod +77 -0
  75. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/bin/bash+ +43 -0
  76. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/doc/bash+.swim +61 -0
  77. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/lib/bash+.bash +92 -0
  78. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/man/man1/bash+.1 +134 -0
  79. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/man/man3/bash+.3 +134 -0
  80. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/base.t +12 -0
  81. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/fcopy.t +22 -0
  82. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/lib/foo/bar.bash +3 -0
  83. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/lib/foo/foo.bash +3 -0
  84. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/source-bash+-std.t +18 -0
  85. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/source-bash+.t +23 -0
  86. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/test.bash +70 -0
  87. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/use.t +19 -0
  88. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Changes +15 -0
  89. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/License +21 -0
  90. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Makefile +37 -0
  91. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Meta +28 -0
  92. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/ReadMe.pod +66 -0
  93. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/doc/test-tap.swim +48 -0
  94. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/lib/test/tap.bash +153 -0
  95. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/man/man3/test-tap.3 +119 -0
  96. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/bail_out.t +13 -0
  97. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/done.t +10 -0
  98. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/fail.t +20 -0
  99. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/fail_fast.t +15 -0
  100. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/helper.bash +9 -0
  101. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/pass.t +9 -0
  102. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/plan.t +10 -0
  103. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/skip_all.t +20 -0
  104. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/tap.t +13 -0
  105. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/bail.t +14 -0
  106. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/fail.t +7 -0
  107. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/fail_fast.t +12 -0
  108. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/skip-all-init.t +8 -0
  109. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/skip-all-plan.t +9 -0
  110. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/lib/test/more.bash +95 -0
  111. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/man/man3/test-more.3 +173 -0
  112. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/fail.t +20 -0
  113. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/more.t +20 -0
  114. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/pass.t +9 -0
  115. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/setup +8 -0
  116. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/skip_all.t +11 -0
  117. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/test/fail1.t +12 -0
  118. data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/test/skip_all.t +10 -0
  119. data/sub/eac_git/vendor/git-subrepo/lib/git-subrepo +1903 -0
  120. data/sub/eac_git/vendor/git-subrepo/lib/git-subrepo.d/bash+.bash +1 -0
  121. data/sub/eac_git/vendor/git-subrepo/lib/git-subrepo.d/help-functions.bash +339 -0
  122. data/sub/eac_git/vendor/git-subrepo/man/man1/git-subrepo.1 +743 -0
  123. data/sub/eac_git/vendor/git-subrepo/note/0.4.0 +12 -0
  124. data/sub/eac_git/vendor/git-subrepo/note/AllGitCmds +148 -0
  125. data/sub/eac_git/vendor/git-subrepo/note/Cases +32 -0
  126. data/sub/eac_git/vendor/git-subrepo/note/Commands +33 -0
  127. data/sub/eac_git/vendor/git-subrepo/note/Dags +199 -0
  128. data/sub/eac_git/vendor/git-subrepo/note/Gists +7 -0
  129. data/sub/eac_git/vendor/git-subrepo/note/Links +25 -0
  130. data/sub/eac_git/vendor/git-subrepo/note/Plugins +10 -0
  131. data/sub/eac_git/vendor/git-subrepo/note/Spec +39 -0
  132. data/sub/eac_git/vendor/git-subrepo/note/Story1 +57 -0
  133. data/sub/eac_git/vendor/git-subrepo/note/ToDo +55 -0
  134. data/sub/eac_git/vendor/git-subrepo/note/design.swim +137 -0
  135. data/sub/eac_git/vendor/git-subrepo/note/design2.swim +85 -0
  136. data/sub/eac_git/vendor/git-subrepo/note/init-test +38 -0
  137. data/sub/eac_git/vendor/git-subrepo/note/pull-dance.txt +18 -0
  138. data/sub/eac_git/vendor/git-subrepo/note/recreate-rebase-conflict.sh +56 -0
  139. data/sub/eac_git/vendor/git-subrepo/note/subtree-rebase-fail-example/test.bash +29 -0
  140. data/sub/eac_git/vendor/git-subrepo/note/test-subrepo-push.sh +69 -0
  141. data/sub/eac_git/vendor/git-subrepo/note/test.sh +58 -0
  142. data/sub/eac_git/vendor/git-subrepo/pkg/bin/generate-completion.pl +210 -0
  143. data/sub/eac_git/vendor/git-subrepo/pkg/bin/generate-help-functions.pl +89 -0
  144. data/sub/eac_git/vendor/git-subrepo/share/completion.bash +42 -0
  145. data/sub/eac_git/vendor/git-subrepo/share/enable-completion.sh +50 -0
  146. data/sub/eac_git/vendor/git-subrepo/share/git-completion.bash +2738 -0
  147. data/sub/eac_git/vendor/git-subrepo/share/zsh-completion/_git-subrepo +81 -0
  148. data/sub/eac_git/vendor/git-subrepo/test/branch-all.t +41 -0
  149. data/sub/eac_git/vendor/git-subrepo/test/branch-rev-list-one-path.t +43 -0
  150. data/sub/eac_git/vendor/git-subrepo/test/branch-rev-list.t +47 -0
  151. data/sub/eac_git/vendor/git-subrepo/test/branch.t +52 -0
  152. data/sub/eac_git/vendor/git-subrepo/test/clean.t +43 -0
  153. data/sub/eac_git/vendor/git-subrepo/test/clone-annotated-tag.t +45 -0
  154. data/sub/eac_git/vendor/git-subrepo/test/clone.t +107 -0
  155. data/sub/eac_git/vendor/git-subrepo/test/compile.t +19 -0
  156. data/sub/eac_git/vendor/git-subrepo/test/config.t +58 -0
  157. data/sub/eac_git/vendor/git-subrepo/test/encode.t +91 -0
  158. data/sub/eac_git/vendor/git-subrepo/test/error.t +171 -0
  159. data/sub/eac_git/vendor/git-subrepo/test/fetch.t +43 -0
  160. data/sub/eac_git/vendor/git-subrepo/test/gitignore.t +61 -0
  161. data/sub/eac_git/vendor/git-subrepo/test/init.t +64 -0
  162. data/sub/eac_git/vendor/git-subrepo/test/issue29.t +98 -0
  163. data/sub/eac_git/vendor/git-subrepo/test/issue95.t +98 -0
  164. data/sub/eac_git/vendor/git-subrepo/test/issue96.t +96 -0
  165. data/sub/eac_git/vendor/git-subrepo/test/pull-all.t +38 -0
  166. data/sub/eac_git/vendor/git-subrepo/test/pull-merge.t +113 -0
  167. data/sub/eac_git/vendor/git-subrepo/test/pull-message.t +88 -0
  168. data/sub/eac_git/vendor/git-subrepo/test/pull-new-branch.t +58 -0
  169. data/sub/eac_git/vendor/git-subrepo/test/pull-ours.t +90 -0
  170. data/sub/eac_git/vendor/git-subrepo/test/pull-theirs.t +82 -0
  171. data/sub/eac_git/vendor/git-subrepo/test/pull-twice.t +44 -0
  172. data/sub/eac_git/vendor/git-subrepo/test/pull-worktree.t +40 -0
  173. data/sub/eac_git/vendor/git-subrepo/test/pull.t +99 -0
  174. data/sub/eac_git/vendor/git-subrepo/test/push-after-init.t +51 -0
  175. data/sub/eac_git/vendor/git-subrepo/test/push-force.t +56 -0
  176. data/sub/eac_git/vendor/git-subrepo/test/push-new-branch.t +61 -0
  177. data/sub/eac_git/vendor/git-subrepo/test/push-no-changes.t +29 -0
  178. data/sub/eac_git/vendor/git-subrepo/test/push-squash.t +56 -0
  179. data/sub/eac_git/vendor/git-subrepo/test/push.t +176 -0
  180. data/sub/eac_git/vendor/git-subrepo/test/reclone.t +45 -0
  181. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/HEAD +1 -0
  182. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/config +4 -0
  183. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/1f/0c4b264caed0126814a0ede851a1e0b4e16ae6 +0 -0
  184. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/87/46903fdb1b9c2101377880125917c2e05b4d69 +0 -0
  185. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/94/c86ffc745232d89f78c6f895e11e71272518db +0 -0
  186. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/c6/76c57b6576743fa56278527aa60ebd2e202a7c +0 -0
  187. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
  188. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/f6/2a8ff3feadf39b0a98f1a86ec6d1eb33858ee9 +0 -0
  189. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/refs/heads/master +1 -0
  190. data/sub/eac_git/vendor/git-subrepo/test/repo/bar/refs/tags/A +1 -0
  191. data/sub/eac_git/vendor/git-subrepo/test/repo/foo/HEAD +1 -0
  192. data/sub/eac_git/vendor/git-subrepo/test/repo/foo/config +4 -0
  193. data/sub/eac_git/vendor/git-subrepo/test/repo/foo/objects/a0/f4cdaaf533a936296cdebbed8206c3b9ededa8 +0 -0
  194. data/sub/eac_git/vendor/git-subrepo/test/repo/foo/objects/e2/1291a1ad392a9d4c51dd9586804f1467b28afd +0 -0
  195. data/sub/eac_git/vendor/git-subrepo/test/repo/foo/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
  196. data/sub/eac_git/vendor/git-subrepo/test/repo/foo/refs/heads/master +1 -0
  197. data/sub/eac_git/vendor/git-subrepo/test/repo/init/HEAD +1 -0
  198. data/sub/eac_git/vendor/git-subrepo/test/repo/init/config +5 -0
  199. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/11/523f5dcf03b4c89b592dc8a3d0308f68da2386 +0 -0
  200. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/14/2addf8ec5f37334e837440122c62f2c68a29ad +0 -0
  201. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/32/5180321750a21cd7a4e7ecda319e557a4f6a09 +2 -0
  202. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/3d/918c6901c02f43af5d31779dd5e1f9166aeb36 +0 -0
  203. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/3e/4cb596066dce63ba4d047abddb677389b65e19 +0 -0
  204. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/4b/6e53022e7a04f07887697e4f3d7c377fd9822b +0 -0
  205. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/58/931fc1bd559b59c41ea738fc7ad04f9ad01bd3 +0 -0
  206. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/5e/c0c28e1b806f25efdca18fcf7a74b49c3755bd +0 -0
  207. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/75/fa6584e748f57eff06eebdc55e9ac21d4fcbf2 +1 -0
  208. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/80/2d5edbd5e1cb7fca82b5bd38e7c8a0a496fb20 +0 -0
  209. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/94/7b3d714c38791e95ad6f928b48c98bb8708acd +0 -0
  210. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/95/e1f2df3f4d5f3d7a60588c25a7ca8a913d3c2a +1 -0
  211. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/b1/5f4a7666baf40d949548ead946a3370e273479 +0 -0
  212. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/c3/ee8978c4c5d84c3b7d00ba8e5906933d027882 +0 -0
  213. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/c8/b0bffbc405ef3fad7354ff833fbec36d67ddfa +3 -0
  214. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/dd/8bdb934ec848137f011fe423b185505c343626 +2 -0
  215. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/e2/9be58c767cfeb27235c995d293a7d71aac0135 +2 -0
  216. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/ee/1224401fc6aac595145fa727dcf6706ac8aec1 +1 -0
  217. data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/f1/cc1a657b2e805c400f5dcaaa76bd29c6178b1b +0 -0
  218. data/sub/eac_git/vendor/git-subrepo/test/repo/init/refs/heads/master +1 -0
  219. data/sub/eac_git/vendor/git-subrepo/test/setup +205 -0
  220. data/sub/eac_git/vendor/git-subrepo/test/status.t +68 -0
  221. data/sub/eac_git/vendor/git-subrepo/test/submodule.t +45 -0
  222. metadata +246 -128
  223. data/sub/avm-git/avm-git.gemspec +0 -25
  224. data/sub/avm-git/lib/avm/git/application_scms/base/assert_main_at.rb +0 -44
  225. data/sub/avm-git/lib/avm/git/application_scms/base.rb +0 -18
  226. data/sub/avm-git/lib/avm/git/application_scms.rb +0 -9
  227. data/sub/avm-git/lib/avm/git/commit/class_methods.rb +0 -29
  228. data/sub/avm-git/lib/avm/git/commit/file.rb +0 -42
  229. data/sub/avm-git/lib/avm/git/commit.rb +0 -57
  230. data/sub/avm-git/lib/avm/git/issue/complete/commits.rb +0 -40
  231. data/sub/avm-git/lib/avm/git/issue/complete/git_subrepos.rb +0 -20
  232. data/sub/avm-git/lib/avm/git/issue/complete/local_branch.rb +0 -59
  233. data/sub/avm-git/lib/avm/git/issue/complete/local_tag.rb +0 -37
  234. data/sub/avm-git/lib/avm/git/issue/complete/push.rb +0 -60
  235. data/sub/avm-git/lib/avm/git/issue/complete/remote.rb +0 -33
  236. data/sub/avm-git/lib/avm/git/issue/complete/test.rb +0 -34
  237. data/sub/avm-git/lib/avm/git/issue/complete/tracker.rb +0 -21
  238. data/sub/avm-git/lib/avm/git/issue/complete/validation.rb +0 -36
  239. data/sub/avm-git/lib/avm/git/issue/complete/validations.rb +0 -49
  240. data/sub/avm-git/lib/avm/git/issue/complete/working_tree.rb +0 -19
  241. data/sub/avm-git/lib/avm/git/issue/complete.rb +0 -66
  242. data/sub/avm-git/lib/avm/git/issue.rb +0 -10
  243. data/sub/avm-git/lib/avm/git/launcher/base/class_methods.rb +0 -28
  244. data/sub/avm-git/lib/avm/git/launcher/base/dirty_files.rb +0 -21
  245. data/sub/avm-git/lib/avm/git/launcher/base/remotes.rb +0 -37
  246. data/sub/avm-git/lib/avm/git/launcher/base/subrepo.rb +0 -42
  247. data/sub/avm-git/lib/avm/git/launcher/base/underlying.rb +0 -54
  248. data/sub/avm-git/lib/avm/git/launcher/base.rb +0 -81
  249. data/sub/avm-git/lib/avm/git/launcher/error.rb +0 -13
  250. data/sub/avm-git/lib/avm/git/launcher/mirror_update.rb +0 -36
  251. data/sub/avm-git/lib/avm/git/launcher/publish_base.rb +0 -127
  252. data/sub/avm-git/lib/avm/git/launcher/remote.rb +0 -53
  253. data/sub/avm-git/lib/avm/git/launcher/sub_warp_base.rb +0 -36
  254. data/sub/avm-git/lib/avm/git/launcher/warp_base.rb +0 -63
  255. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/local_project_mixin.rb +0 -16
  256. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/publish.rb +0 -13
  257. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/warp.rb +0 -25
  258. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git.rb +0 -22
  259. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo/publish.rb +0 -29
  260. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo/warp.rb +0 -82
  261. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo.rb +0 -32
  262. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree/publish.rb +0 -12
  263. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree/warp.rb +0 -29
  264. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree.rb +0 -47
  265. data/sub/avm-git/lib/avm/git/launcher_stereotypes/provider.rb +0 -17
  266. data/sub/avm-git/lib/avm/git/launcher_stereotypes.rb +0 -9
  267. data/sub/avm-git/lib/avm/git/organize/reference_update.rb +0 -32
  268. data/sub/avm-git/lib/avm/git/organize/repository.rb +0 -74
  269. data/sub/avm-git/lib/avm/git/organize.rb +0 -9
  270. data/sub/avm-git/lib/avm/git/revision_test.rb +0 -102
  271. data/sub/avm-git/lib/avm/git/runners/base/commit.rb +0 -96
  272. data/sub/avm-git/lib/avm/git/runners/base/deploy.rb +0 -108
  273. data/sub/avm-git/lib/avm/git/runners/base/dirty_files.rb +0 -42
  274. data/sub/avm-git/lib/avm/git/runners/base/organize.rb +0 -72
  275. data/sub/avm-git/lib/avm/git/runners/base/revisions_test.rb +0 -63
  276. data/sub/avm-git/lib/avm/git/runners/base/subrepo/check.rb +0 -45
  277. data/sub/avm-git/lib/avm/git/runners/base/subrepo/clone.rb +0 -80
  278. data/sub/avm-git/lib/avm/git/runners/base/subrepo/fix.rb +0 -69
  279. data/sub/avm-git/lib/avm/git/runners/base/subrepo.rb +0 -17
  280. data/sub/avm-git/lib/avm/git/runners/base.rb +0 -40
  281. data/sub/avm-git/lib/avm/git/runners.rb +0 -9
  282. data/sub/avm-git/lib/avm/git/scms/git/branch.rb +0 -28
  283. data/sub/avm-git/lib/avm/git/scms/git/branches.rb +0 -17
  284. data/sub/avm-git/lib/avm/git/scms/git/change_tracker.rb +0 -34
  285. data/sub/avm-git/lib/avm/git/scms/git/changed_file.rb +0 -25
  286. data/sub/avm-git/lib/avm/git/scms/git/changed_files.rb +0 -21
  287. data/sub/avm-git/lib/avm/git/scms/git/commit/deploy.rb +0 -37
  288. data/sub/avm-git/lib/avm/git/scms/git/commit/deploy_methods.rb +0 -24
  289. data/sub/avm-git/lib/avm/git/scms/git/commit.rb +0 -64
  290. data/sub/avm-git/lib/avm/git/scms/git/commit_dirty.rb +0 -32
  291. data/sub/avm-git/lib/avm/git/scms/git/commits.rb +0 -44
  292. data/sub/avm-git/lib/avm/git/scms/git/interval.rb +0 -28
  293. data/sub/avm-git/lib/avm/git/scms/git/milestones.rb +0 -18
  294. data/sub/avm-git/lib/avm/git/scms/git/remote.rb +0 -18
  295. data/sub/avm-git/lib/avm/git/scms/git/remotes.rb +0 -29
  296. data/sub/avm-git/lib/avm/git/scms/git/run_commit.rb +0 -54
  297. data/sub/avm-git/lib/avm/git/scms/git.rb +0 -46
  298. data/sub/avm-git/lib/avm/git/scms/git_sub_base/changed_file.rb +0 -19
  299. data/sub/avm-git/lib/avm/git/scms/git_sub_base/commit.rb +0 -23
  300. data/sub/avm-git/lib/avm/git/scms/git_sub_base/interval.rb +0 -23
  301. data/sub/avm-git/lib/avm/git/scms/git_sub_base.rb +0 -30
  302. data/sub/avm-git/lib/avm/git/scms/git_subrepo.rb +0 -33
  303. data/sub/avm-git/lib/avm/git/scms/git_subtree.rb +0 -29
  304. data/sub/avm-git/lib/avm/git/scms/provider.rb +0 -16
  305. data/sub/avm-git/lib/avm/git/scms.rb +0 -9
  306. data/sub/avm-git/lib/avm/git/subrepo_check/parent.rb +0 -48
  307. data/sub/avm-git/lib/avm/git/subrepo_check/remote.rb +0 -86
  308. data/sub/avm-git/lib/avm/git/subrepo_check/show_result.rb +0 -30
  309. data/sub/avm-git/lib/avm/git/subrepo_check.rb +0 -36
  310. data/sub/avm-git/lib/avm/git/subrepo_checks.rb +0 -57
  311. data/sub/avm-git/lib/avm/git/vendor/github.rb +0 -20
  312. data/sub/avm-git/lib/avm/git/vendor.rb +0 -9
  313. data/sub/avm-git/lib/avm/git/version.rb +0 -7
  314. data/sub/avm-git/lib/avm/git.rb +0 -16
  315. data/sub/avm-git/locale/en.yml +0 -6
  316. data/sub/avm-git/locale/pt-BR.yml +0 -6
  317. data/sub/avm-git/spec/lib/avm/git/launcher/base_spec.rb +0 -45
  318. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec.rb +0 -83
  319. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec_files/config.yml +0 -5
  320. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec_settings.yml +0 -6
  321. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec.rb +0 -53
  322. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec_files/config.yml +0 -3
  323. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec_settings.yml +0 -6
  324. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec.rb +0 -126
  325. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec_files/append1/stub3.txt.template +0 -1
  326. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec_files/append2/stub4.txt +0 -1
  327. data/sub/avm-git/spec/lib/avm/git/scms/git/commit/deploy_spec.rb +0 -92
  328. data/sub/avm-git/spec/lib/avm/git/scms/git_spec.rb +0 -8
  329. data/sub/avm-git/spec/lib/avm/git/scms/git_subrepo_spec.rb +0 -8
  330. data/sub/avm-git/spec/lib/avm/git/vendor/github_spec.rb +0 -23
  331. /data/sub/{avm-git → eac_git}/Gemfile +0 -0
  332. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/add.source.out +0 -0
  333. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/add.target.yaml +0 -0
  334. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/modify.source.out +0 -0
  335. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/modify.target.yaml +0 -0
  336. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/remove.source.out +0 -0
  337. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/remove.target.yaml +0 -0
  338. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/rename.source.out +0 -0
  339. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/rename.target.yaml +0 -0
  340. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/rename_modify.source.out +0 -0
  341. /data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec_files/rename_modify.target.yaml +0 -0
  342. /data/sub/{avm-git → eac_git}/spec/rubocop_spec.rb +0 -0
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class Git < ::Avm::Scms::Base
7
- module Commits
8
- # @return [Avm::Git::Scms::Git::Commit,nil]
9
- def commit(source)
10
- if source.is_a?(::Avm::Git::Scms::Git::Commit)
11
- return source if source.git_repo == git_repo
12
-
13
- raise 'Not same Git repository'
14
- end
15
- git_repo.commitize(source).if_present do |v|
16
- ::Avm::Git::Scms::Git::Commit.new(self, v)
17
- end
18
- end
19
-
20
- # @param commit_info [Avm::Scms::CommitInfo]
21
- # @return [Avm::Git::Scms::Git::Commit,nil]
22
- def commit_if_change(commit_info = nil)
23
- tracker = ::Avm::Git::Scms::Git::ChangeTracker.new(self, commit_info)
24
- tracker.start
25
- yield
26
- tracker.stop
27
- end
28
-
29
- # @return [Avm::Git::Scms::Git::Commit]
30
- def head_commit
31
- commit(git_repo.head)
32
- end
33
-
34
- # @param commit_info [Avm::Scms::CommitInfo]
35
- # @return [Avm::Git::Scms::Git::Commit]
36
- def reset_and_commit(commit_to_reset, commit_info)
37
- git_repo.command('reset', '--soft', commit(commit_to_reset).git_commit.id).execute!
38
- commit_dirty(commit_info)
39
- end
40
- end
41
- end
42
- end
43
- end
44
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class Git < ::Avm::Scms::Base
7
- class Interval < ::Avm::Scms::Interval
8
- def initialize(scm, from, to)
9
- super
10
- self.from = scm.commit(from)
11
- self.to = scm.commit(to)
12
- end
13
-
14
- # @return [Array<Avm::Git::Scms::Git::Commit>]
15
- def commits
16
- scm.git_repo.command('log', '--pretty=format:%H', git_commit_interval).execute!
17
- .each_line.map { |sha1| scm.commit(sha1.strip) }
18
- end
19
-
20
- # @return [String]
21
- def git_commit_interval
22
- [from.id, to.id].join('..')
23
- end
24
- end
25
- end
26
- end
27
- end
28
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class Git < ::Avm::Scms::Base
7
- module Milestones
8
- BASE_COMMIT_REFERENCE = 'origin/master'
9
-
10
- # @return [Avm::Git::Scms::Git::Commit]
11
- def current_milestone_base_commit
12
- commit(BASE_COMMIT_REFERENCE)
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class Git < ::Avm::Scms::Base
7
- class Remote < ::Avm::Scms::Remote
8
- common_constructor :scm, :eac_git_remote
9
-
10
- # @return [String]
11
- def id
12
- nyi eac_git_remote
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class Git < ::Avm::Scms::Base
7
- module Remotes
8
- DEFAULT_REMOTE_ID = 'origin'
9
-
10
- # @return [Avm::Git::Scms::Git::Remote]
11
- def default_remote
12
- remote(default_remote_id)
13
- end
14
-
15
- # @return [String]
16
- def default_remote_id
17
- DEFAULT_REMOTE_ID
18
- end
19
-
20
- # @param id [String]
21
- # @return [Avm::Git::Scms::Git::Remote]
22
- def remote(id)
23
- ::Avm::Git::Scms::Git::Remote.new(self, git_repo.remote(id))
24
- end
25
- end
26
- end
27
- end
28
- end
29
- end
@@ -1,54 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class Git < ::Avm::Scms::Base
7
- class RunCommit
8
- enable_method_class
9
-
10
- common_constructor :scm, :commit_info
11
-
12
- # @return [Avm::Git::Scms::Git::Commit]
13
- def result
14
- reset
15
- add_paths
16
- commit
17
-
18
- scm.head_commit
19
- end
20
-
21
- protected
22
-
23
- def add_path(path)
24
- scm.git_repo.command(
25
- *(path.exist? ? ['add'] : ['rm', '-f']),
26
- path.relative_path_from(scm.path)
27
- ).execute!
28
- end
29
-
30
- def add_paths
31
- commit_info.paths.each { |path| add_path(path) }
32
- end
33
-
34
- def commit
35
- scm.git_repo.command('commit', *commit_args).execute!
36
- end
37
-
38
- # @return [Array<String>]
39
- def commit_args
40
- r = commit_info.fixup.if_present([]) { |v| ['--fixup', v.id] }
41
- r += commit_info.message.if_present([]) { |v| ['--message', v] }
42
- return r if r.any?
43
-
44
- raise 'Argument list is empty'
45
- end
46
-
47
- def reset
48
- scm.git_repo.command('reset', 'HEAD').execute!
49
- end
50
- end
51
- end
52
- end
53
- end
54
- end
@@ -1,46 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class Git < ::Avm::Scms::Base
7
- require_sub __FILE__, include_modules: true
8
- include ::Comparable
9
-
10
- COMMIT_DIRTY_DEFAULT_MESSAGE = 'Dirty files.'
11
-
12
- def <=>(other)
13
- git_repo <=> other.git_repo
14
- end
15
-
16
- # @param options [Hash<Symbol, Object>]
17
- # @return [Avm::Git::Issues::Complete]
18
- def completer(options = {})
19
- ::Avm::Git::Issue::Complete.new(self, options)
20
- end
21
-
22
- def git_repo
23
- @git_repo ||= ::EacGit::Local.new(path)
24
- end
25
-
26
- # @param from [Avm::Git::Scms::Git::Commit]
27
- # @param to [Avm::Git::Scms::Git::Commit]
28
- # @return [Avm::Git::Scms::Git::Interval]
29
- def interval(from, to)
30
- ::Avm::Git::Scms::Git::Interval.new(self, from, to)
31
- end
32
-
33
- # @return [Enumerable<Avm::Git::Scms::GitSubrepo>]
34
- def subs
35
- git_repo.subrepos.map do |subrepo|
36
- ::Avm::Git::Scms::GitSubrepo.new(subrepo.subpath.expand_path(path))
37
- end
38
- end
39
-
40
- def valid?
41
- path.join('.git').exist?
42
- end
43
- end
44
- end
45
- end
46
- end
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class GitSubBase < ::Avm::Scms::Base
7
- class ChangedFile < ::Avm::Scms::ChangedFile
8
- common_constructor :scm, :parent_changed_file
9
- delegate :action, to: :parent_changed_file
10
-
11
- # @return [Pathname]
12
- def path
13
- parent_changed_file.path.relative_path_from(scm.relative_path_from_parent_scm)
14
- end
15
- end
16
- end
17
- end
18
- end
19
- end
@@ -1,23 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class GitSubBase < ::Avm::Scms::Base
7
- class Commit < ::Avm::Scms::Commit
8
- common_constructor :scm, :parent_commit
9
-
10
- delegate :deploy_to_env_path, :fixup?, :id, :merge_with, :reword, :scm_file?, :subject,
11
- :to_s, to: :parent_commit
12
-
13
- # @return [Array<Pathname>]
14
- def changed_files
15
- parent_commit.changed_files.map do |cf|
16
- cf.relative_path_from(scm.relative_path_from_parent_scm)
17
- end
18
- end
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,23 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class GitSubBase < ::Avm::Scms::Base
7
- class Interval < ::Avm::Scms::Interval
8
- # @return [Array<Avm::Git::Scms::GitSubBase::Commit>]
9
- def commits
10
- parent_interval.commits.map do |parent_commit|
11
- Avm::Git::Scms::GitSubBase::Commit.new(scm, parent_commit)
12
- end
13
- end
14
-
15
- # @return [Avm::Git::Scms::Git::Interval]
16
- def parent_interval
17
- scm.parent_scm.interval(from, to)
18
- end
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class GitSubBase < ::Avm::Scms::Base
7
- enable_abstract_methods
8
-
9
- delegate :commit_if_change, :current_milestone_base_commit,
10
- :head_commit, :reset_and_commit, :run_commit, to: :parent_scm
11
-
12
- # @return [Enumerable<Avm::Git::Scms::GitSubBase::ChangedFile>]
13
- def changed_files
14
- parent_scm.changed_files.map do |parent_changed_file|
15
- ::Avm::Git::Scms::GitSubBase::ChangedFile.new(self, parent_changed_file)
16
- end
17
- end
18
-
19
- # @param from [Avm::Git::Scms::Git::Commit]
20
- # @param to [Avm::Git::Scms::Git::Commit]
21
- # @return [Avm::Git::Scms::GitSubBase::Interval]
22
- def interval(from, to)
23
- ::Avm::Git::Scms::GitSubBase::Interval.new(self, from, to)
24
- end
25
-
26
- require_sub __FILE__
27
- end
28
- end
29
- end
30
- end
@@ -1,33 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class GitSubrepo < ::Avm::Git::Scms::GitSubBase
7
- def update
8
- git_subrepo.command('clean').execute!
9
- git_subrepo.command('pull').execute!
10
- end
11
-
12
- # @return [EacGit::Local]
13
- def git_repo
14
- @git_repo ||= ::EacGit::Local.find(path)
15
- end
16
-
17
- # @return [EacGit::Local::Subrepo]
18
- def git_subrepo
19
- @git_subrepo ||= git_repo.subrepo(subpath)
20
- end
21
-
22
- # @return [Pathname]
23
- def subpath
24
- path.expand_path.relative_path_from(git_repo.root_path.expand_path)
25
- end
26
-
27
- def valid?
28
- path.join('.gitrepo').file?
29
- end
30
- end
31
- end
32
- end
33
- end
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class GitSubtree < ::Avm::Git::Scms::GitSubBase
7
- # @return [Boolean]
8
- def no_other_git_scm?
9
- (::Avm::Git::Scms::Provider.new.all - [self.class])
10
- .lazy.map { |scm_class| scm_class.new(path) }.none?(&:valid?)
11
- end
12
-
13
- # @return [Boolean]
14
- def parent_git_scm?
15
- ::Avm::Git::Scms::Provider.new.all.any? { |scm_class| parent_scm.is_a?(scm_class) }
16
- end
17
-
18
- def update
19
- # Do nothing
20
- end
21
-
22
- # @return [Boolean]
23
- def valid?
24
- parent_git_scm? && no_other_git_scm?
25
- end
26
- end
27
- end
28
- end
29
- end
@@ -1,16 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- class Provider
7
- SCMS = [::Avm::Git::Scms::Git, ::Avm::Git::Scms::GitSubrepo,
8
- ::Avm::Git::Scms::GitSubtree].freeze
9
-
10
- def all
11
- SCMS
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- module Scms
6
- require_sub __FILE__
7
- end
8
- end
9
- end
@@ -1,48 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- class SubrepoCheck
6
- module Parent
7
- def fix_parent
8
- return if parent_result.success?
9
-
10
- info(' Fixing...')
11
- self.parent_hash = expected_parent_hash
12
- info_banner
13
- end
14
-
15
- private
16
-
17
- def expected_parent_hash_uncached
18
- subrepo.local.rev_parse("#{last_file_change_rev}^")
19
- end
20
-
21
- def last_file_change_rev
22
- subrepo.local.command('log', '-n', '1', '--pretty=format:%H', '--',
23
- subrepo.config_relative_path.to_path).execute!.strip
24
- end
25
-
26
- def parent_hash
27
- subrepo.parent_commit_id
28
- end
29
-
30
- def parent_hash=(new_hash)
31
- subrepo.config.parent_commit_id = new_hash
32
- subrepo.write_config
33
- end
34
-
35
- def parent_hash_ok?
36
- return false if expected_parent_hash.blank? || parent_hash.blank?
37
-
38
- expected_parent_hash == parent_hash
39
- end
40
-
41
- def parent_result_uncached
42
- ::Avm::Result.success_or_error(parent_hash_ok?,
43
- parent_hash.presence || blank_text)
44
- end
45
- end
46
- end
47
- end
48
- end
@@ -1,86 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- class SubrepoCheck
6
- module Remote
7
- private
8
-
9
- def fetch_uncached
10
- subrepo.command('clean').execute!
11
- subrepo.command('fetch').execute!
12
- end
13
-
14
- def check_remote_disabled?
15
- !check_remote?
16
- end
17
-
18
- def check_remote_disabled_result
19
- ::Avm::Result.neutral('Check remote disabled')
20
- end
21
-
22
- def local_descend_remote?
23
- local_id.present? && remote_id.present? && subrepo.local.descendant?(local_id, remote_id)
24
- end
25
-
26
- def local_descend_remote_result
27
- ::Avm::Result.pending(remote_result_value)
28
- end
29
-
30
- def local_id_uncached
31
- fetch
32
- subrepo.command('branch', '--force').execute!
33
- subrepo.local.rev_parse("subrepo/#{subrepo.subpath}")
34
- end
35
-
36
- def remote_descend_local?
37
- local_id.present? && remote_id.present? && subrepo.local.descendant?(remote_id, local_id)
38
- end
39
-
40
- def remote_descend_local_result
41
- ::Avm::Result.outdated(remote_result_value)
42
- end
43
-
44
- def remote_branches
45
- ['', 'refs/heads/', 'refs/tags/'].map { |prefix| "#{prefix}#{subrepo.remote_branch}" }
46
- end
47
-
48
- def remote_id_uncached
49
- ls_result = subrepo.remote.ls
50
- remote_branches.each do |b|
51
- return ls_result[b] if ls_result[b].present?
52
- end
53
- nil
54
- end
55
-
56
- def remote_result_uncached
57
- %w[check_remote_disabled same_ids local_descend_remote remote_descend_local]
58
- .each do |condition|
59
- return send("#{condition}_result") if send("#{condition}?")
60
- end
61
-
62
- ::Avm::Result.error(remote_result_value)
63
- end
64
-
65
- def remote_result_value
66
- local_s = local_id.presence || blank_text
67
- remote_s = remote_id.presence || blank_text
68
-
69
- if local_s == remote_s
70
- "[L/R=#{local_s}]"
71
- else
72
- "[L=#{local_s}, R=#{remote_s}]"
73
- end
74
- end
75
-
76
- def same_ids?
77
- local_id.present? && remote_id.present? && local_id == remote_id
78
- end
79
-
80
- def same_ids_result
81
- ::Avm::Result.success(remote_result_value)
82
- end
83
- end
84
- end
85
- end
86
- end
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- class SubrepoCheck
6
- module ShowResult
7
- def show_result
8
- out(subrepo.subpath.to_path.cyan)
9
- out_attr('parent', parent_result.label)
10
- run_fix_parent
11
- out_attr('remote', remote_result.label)
12
- out("\n")
13
- end
14
-
15
- def run_fix_parent
16
- return unless fix_parent?
17
- return unless parent_result.error?
18
-
19
- out('|Fixing...'.white)
20
- self.parent_hash = expected_parent_hash
21
- out_attr('new parent', parent_result.label)
22
- end
23
-
24
- def out_attr(key, value)
25
- out("|#{"#{key}=".white}#{value}")
26
- end
27
- end
28
- end
29
- end
30
- end
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- class SubrepoCheck
6
- require_sub __FILE__, include_modules: true
7
- enable_speaker
8
- enable_simple_cache
9
-
10
- BLANK_TEXT = 'BLANK'
11
-
12
- common_constructor :subrepo, :options
13
-
14
- def blank_text
15
- BLANK_TEXT
16
- end
17
-
18
- def check_remote?
19
- options.fetch(:check_remote) ? true : false
20
- end
21
-
22
- def fix_parent?
23
- options.fetch(:fix_parent) ? true : false
24
- end
25
-
26
- private
27
-
28
- def result_uncached
29
- return ::Avm::Result.error('Parent failed') if parent_result.error?
30
- return ::Avm::Result.error('Remote failed') if remote_result.error?
31
-
32
- ::Avm::Result.success('Parent and remote ok')
33
- end
34
- end
35
- end
36
- end
@@ -1,57 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Git
5
- class SubrepoChecks
6
- enable_speaker
7
- enable_simple_cache
8
- attr_accessor :check_remote, :fix_parent
9
-
10
- common_constructor :repository
11
-
12
- def add_all_subrepos
13
- add_subrepos(
14
- *repository.command('subrepo', '-q', 'status').execute!.split("\n").map(&:strip)
15
- .select(&:present?)
16
- )
17
- end
18
-
19
- def add_subrepos(*subpath_list)
20
- subpath_list.each do |subpath|
21
- subpaths.add(subpath)
22
- end
23
- reset_cache
24
- self
25
- end
26
-
27
- def check_options
28
- { fix_parent: fix_parent, check_remote: check_remote }
29
- end
30
-
31
- def show_result
32
- checks.each(&:show_result)
33
- infov 'Result', result.label
34
- end
35
-
36
- private
37
-
38
- def checks_uncached
39
- subpaths.map do |subpath|
40
- ::Avm::Git::SubrepoCheck.new(repository.subrepo(subpath), check_options)
41
- end
42
- end
43
-
44
- def result_uncached
45
- error_count = checks.count { |check| check.result.error? }
46
- ::Avm::Result.success_or_error(
47
- error_count.zero?,
48
- "#{error_count} of #{checks.count} subrepos failed"
49
- )
50
- end
51
-
52
- def subpaths
53
- @subpaths ||= ::Set.new
54
- end
55
- end
56
- end
57
- end