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.
- checksums.yaml +4 -4
- data/Gemfile.lock +35 -35
- data/lib/eac_tools/version.rb +1 -1
- data/sub/eac_git/eac_git.gemspec +20 -0
- data/sub/eac_git/lib/eac_git/executables.rb +45 -0
- data/sub/eac_git/lib/eac_git/local/branch.rb +45 -0
- data/sub/eac_git/lib/eac_git/local/changed_file.rb +53 -0
- data/sub/eac_git/lib/eac_git/local/commit/archive.rb +17 -0
- data/sub/eac_git/lib/eac_git/local/commit/changed_file.rb +43 -0
- data/sub/{avm-git/lib/avm/git → eac_git/lib/eac_git/local}/commit/diff_tree_line.rb +2 -2
- data/sub/eac_git/lib/eac_git/local/commit.rb +71 -0
- data/sub/eac_git/lib/eac_git/local/dirty_files.rb +26 -0
- data/sub/eac_git/lib/eac_git/local/log.rb +14 -0
- data/sub/eac_git/lib/eac_git/local/remote/push.rb +33 -0
- data/sub/eac_git/lib/eac_git/local/remote.rb +47 -0
- data/sub/eac_git/lib/eac_git/local/remotes.rb +17 -0
- data/sub/eac_git/lib/eac_git/local/subrepo/config.rb +40 -0
- data/sub/eac_git/lib/eac_git/local/subrepo.rb +46 -0
- data/sub/eac_git/lib/eac_git/local.rb +124 -0
- data/sub/eac_git/lib/eac_git/remote.rb +20 -0
- data/sub/eac_git/lib/eac_git/remote_like/ls_result.rb +18 -0
- data/sub/eac_git/lib/eac_git/remote_like.rb +30 -0
- data/sub/eac_git/lib/eac_git/rspec/setup.rb +20 -0
- data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo/directory.rb +35 -0
- data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo/file.rb +21 -0
- data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo/fs_object.rb +25 -0
- data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo/repository.rb +30 -0
- data/sub/eac_git/lib/eac_git/rspec/stubbed_git_local_repo.rb +28 -0
- data/sub/eac_git/lib/eac_git/rspec.rb +7 -0
- data/sub/eac_git/lib/eac_git/version.rb +5 -0
- data/sub/eac_git/lib/eac_git.rb +9 -0
- data/sub/eac_git/spec/lib/eac_git/executables_spec.rb +11 -0
- data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec.rb +1 -3
- data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit_spec.rb +10 -10
- data/sub/eac_git/spec/lib/eac_git/local/dirty_files_spec.rb +18 -0
- data/sub/{avm-git → eac_git}/spec/spec_helper.rb +2 -2
- data/sub/eac_git/vendor/git-subrepo/Changes +110 -0
- data/sub/eac_git/vendor/git-subrepo/Intro.pod +509 -0
- data/sub/eac_git/vendor/git-subrepo/License +21 -0
- data/sub/eac_git/vendor/git-subrepo/Makefile +82 -0
- data/sub/eac_git/vendor/git-subrepo/Meta +28 -0
- data/sub/eac_git/vendor/git-subrepo/ReadMe.pod +698 -0
- data/sub/eac_git/vendor/git-subrepo/doc/comparison.swim +35 -0
- data/sub/eac_git/vendor/git-subrepo/doc/git-subrepo.swim +608 -0
- data/sub/eac_git/vendor/git-subrepo/doc/intro-to-subrepo.swim +387 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/Changes +15 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/License +21 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/Makefile +45 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/Meta +28 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/ReadMe.pod +77 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/bin/bash+ +43 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/doc/bash+.swim +61 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/lib/bash+.bash +92 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/man/man1/bash+.1 +134 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/man/man3/bash+.3 +134 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/base.t +12 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/fcopy.t +22 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/lib/foo/bar.bash +3 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/lib/foo/foo.bash +3 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/source-bash+-std.t +18 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/source-bash+.t +23 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/test.bash +70 -0
- data/sub/eac_git/vendor/git-subrepo/ext/bashplus/test/use.t +19 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/Changes +15 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/License +21 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/Makefile +20 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/Meta +30 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ReadMe.pod +115 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/doc/test-more.swim +89 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Changes +15 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/License +21 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Makefile +45 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Meta +28 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/ReadMe.pod +77 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/bin/bash+ +43 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/doc/bash+.swim +61 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/lib/bash+.bash +92 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/man/man1/bash+.1 +134 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/man/man3/bash+.3 +134 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/base.t +12 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/fcopy.t +22 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/lib/foo/bar.bash +3 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/lib/foo/foo.bash +3 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/source-bash+-std.t +18 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/source-bash+.t +23 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/test.bash +70 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/use.t +19 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Changes +15 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/License +21 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Makefile +37 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Meta +28 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/ReadMe.pod +66 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/doc/test-tap.swim +48 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/lib/test/tap.bash +153 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/man/man3/test-tap.3 +119 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/bail_out.t +13 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/done.t +10 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/fail.t +20 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/fail_fast.t +15 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/helper.bash +9 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/pass.t +9 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/plan.t +10 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/skip_all.t +20 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/tap.t +13 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/bail.t +14 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/fail.t +7 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/fail_fast.t +12 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/skip-all-init.t +8 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/skip-all-plan.t +9 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/lib/test/more.bash +95 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/man/man3/test-more.3 +173 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/fail.t +20 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/more.t +20 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/pass.t +9 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/setup +8 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/skip_all.t +11 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/test/fail1.t +12 -0
- data/sub/eac_git/vendor/git-subrepo/ext/test-more-bash/test/test/skip_all.t +10 -0
- data/sub/eac_git/vendor/git-subrepo/lib/git-subrepo +1903 -0
- data/sub/eac_git/vendor/git-subrepo/lib/git-subrepo.d/bash+.bash +1 -0
- data/sub/eac_git/vendor/git-subrepo/lib/git-subrepo.d/help-functions.bash +339 -0
- data/sub/eac_git/vendor/git-subrepo/man/man1/git-subrepo.1 +743 -0
- data/sub/eac_git/vendor/git-subrepo/note/0.4.0 +12 -0
- data/sub/eac_git/vendor/git-subrepo/note/AllGitCmds +148 -0
- data/sub/eac_git/vendor/git-subrepo/note/Cases +32 -0
- data/sub/eac_git/vendor/git-subrepo/note/Commands +33 -0
- data/sub/eac_git/vendor/git-subrepo/note/Dags +199 -0
- data/sub/eac_git/vendor/git-subrepo/note/Gists +7 -0
- data/sub/eac_git/vendor/git-subrepo/note/Links +25 -0
- data/sub/eac_git/vendor/git-subrepo/note/Plugins +10 -0
- data/sub/eac_git/vendor/git-subrepo/note/Spec +39 -0
- data/sub/eac_git/vendor/git-subrepo/note/Story1 +57 -0
- data/sub/eac_git/vendor/git-subrepo/note/ToDo +55 -0
- data/sub/eac_git/vendor/git-subrepo/note/design.swim +137 -0
- data/sub/eac_git/vendor/git-subrepo/note/design2.swim +85 -0
- data/sub/eac_git/vendor/git-subrepo/note/init-test +38 -0
- data/sub/eac_git/vendor/git-subrepo/note/pull-dance.txt +18 -0
- data/sub/eac_git/vendor/git-subrepo/note/recreate-rebase-conflict.sh +56 -0
- data/sub/eac_git/vendor/git-subrepo/note/subtree-rebase-fail-example/test.bash +29 -0
- data/sub/eac_git/vendor/git-subrepo/note/test-subrepo-push.sh +69 -0
- data/sub/eac_git/vendor/git-subrepo/note/test.sh +58 -0
- data/sub/eac_git/vendor/git-subrepo/pkg/bin/generate-completion.pl +210 -0
- data/sub/eac_git/vendor/git-subrepo/pkg/bin/generate-help-functions.pl +89 -0
- data/sub/eac_git/vendor/git-subrepo/share/completion.bash +42 -0
- data/sub/eac_git/vendor/git-subrepo/share/enable-completion.sh +50 -0
- data/sub/eac_git/vendor/git-subrepo/share/git-completion.bash +2738 -0
- data/sub/eac_git/vendor/git-subrepo/share/zsh-completion/_git-subrepo +81 -0
- data/sub/eac_git/vendor/git-subrepo/test/branch-all.t +41 -0
- data/sub/eac_git/vendor/git-subrepo/test/branch-rev-list-one-path.t +43 -0
- data/sub/eac_git/vendor/git-subrepo/test/branch-rev-list.t +47 -0
- data/sub/eac_git/vendor/git-subrepo/test/branch.t +52 -0
- data/sub/eac_git/vendor/git-subrepo/test/clean.t +43 -0
- data/sub/eac_git/vendor/git-subrepo/test/clone-annotated-tag.t +45 -0
- data/sub/eac_git/vendor/git-subrepo/test/clone.t +107 -0
- data/sub/eac_git/vendor/git-subrepo/test/compile.t +19 -0
- data/sub/eac_git/vendor/git-subrepo/test/config.t +58 -0
- data/sub/eac_git/vendor/git-subrepo/test/encode.t +91 -0
- data/sub/eac_git/vendor/git-subrepo/test/error.t +171 -0
- data/sub/eac_git/vendor/git-subrepo/test/fetch.t +43 -0
- data/sub/eac_git/vendor/git-subrepo/test/gitignore.t +61 -0
- data/sub/eac_git/vendor/git-subrepo/test/init.t +64 -0
- data/sub/eac_git/vendor/git-subrepo/test/issue29.t +98 -0
- data/sub/eac_git/vendor/git-subrepo/test/issue95.t +98 -0
- data/sub/eac_git/vendor/git-subrepo/test/issue96.t +96 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull-all.t +38 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull-merge.t +113 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull-message.t +88 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull-new-branch.t +58 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull-ours.t +90 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull-theirs.t +82 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull-twice.t +44 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull-worktree.t +40 -0
- data/sub/eac_git/vendor/git-subrepo/test/pull.t +99 -0
- data/sub/eac_git/vendor/git-subrepo/test/push-after-init.t +51 -0
- data/sub/eac_git/vendor/git-subrepo/test/push-force.t +56 -0
- data/sub/eac_git/vendor/git-subrepo/test/push-new-branch.t +61 -0
- data/sub/eac_git/vendor/git-subrepo/test/push-no-changes.t +29 -0
- data/sub/eac_git/vendor/git-subrepo/test/push-squash.t +56 -0
- data/sub/eac_git/vendor/git-subrepo/test/push.t +176 -0
- data/sub/eac_git/vendor/git-subrepo/test/reclone.t +45 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/HEAD +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/config +4 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/1f/0c4b264caed0126814a0ede851a1e0b4e16ae6 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/87/46903fdb1b9c2101377880125917c2e05b4d69 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/94/c86ffc745232d89f78c6f895e11e71272518db +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/c6/76c57b6576743fa56278527aa60ebd2e202a7c +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/objects/f6/2a8ff3feadf39b0a98f1a86ec6d1eb33858ee9 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/refs/heads/master +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/bar/refs/tags/A +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/foo/HEAD +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/foo/config +4 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/foo/objects/a0/f4cdaaf533a936296cdebbed8206c3b9ededa8 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/foo/objects/e2/1291a1ad392a9d4c51dd9586804f1467b28afd +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/foo/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/foo/refs/heads/master +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/HEAD +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/config +5 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/11/523f5dcf03b4c89b592dc8a3d0308f68da2386 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/14/2addf8ec5f37334e837440122c62f2c68a29ad +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/32/5180321750a21cd7a4e7ecda319e557a4f6a09 +2 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/3d/918c6901c02f43af5d31779dd5e1f9166aeb36 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/3e/4cb596066dce63ba4d047abddb677389b65e19 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/4b/6e53022e7a04f07887697e4f3d7c377fd9822b +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/58/931fc1bd559b59c41ea738fc7ad04f9ad01bd3 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/5e/c0c28e1b806f25efdca18fcf7a74b49c3755bd +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/75/fa6584e748f57eff06eebdc55e9ac21d4fcbf2 +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/80/2d5edbd5e1cb7fca82b5bd38e7c8a0a496fb20 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/94/7b3d714c38791e95ad6f928b48c98bb8708acd +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/95/e1f2df3f4d5f3d7a60588c25a7ca8a913d3c2a +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/b1/5f4a7666baf40d949548ead946a3370e273479 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/c3/ee8978c4c5d84c3b7d00ba8e5906933d027882 +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/c8/b0bffbc405ef3fad7354ff833fbec36d67ddfa +3 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/dd/8bdb934ec848137f011fe423b185505c343626 +2 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/e2/9be58c767cfeb27235c995d293a7d71aac0135 +2 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/ee/1224401fc6aac595145fa727dcf6706ac8aec1 +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/objects/f1/cc1a657b2e805c400f5dcaaa76bd29c6178b1b +0 -0
- data/sub/eac_git/vendor/git-subrepo/test/repo/init/refs/heads/master +1 -0
- data/sub/eac_git/vendor/git-subrepo/test/setup +205 -0
- data/sub/eac_git/vendor/git-subrepo/test/status.t +68 -0
- data/sub/eac_git/vendor/git-subrepo/test/submodule.t +45 -0
- metadata +246 -128
- data/sub/avm-git/avm-git.gemspec +0 -25
- data/sub/avm-git/lib/avm/git/application_scms/base/assert_main_at.rb +0 -44
- data/sub/avm-git/lib/avm/git/application_scms/base.rb +0 -18
- data/sub/avm-git/lib/avm/git/application_scms.rb +0 -9
- data/sub/avm-git/lib/avm/git/commit/class_methods.rb +0 -29
- data/sub/avm-git/lib/avm/git/commit/file.rb +0 -42
- data/sub/avm-git/lib/avm/git/commit.rb +0 -57
- data/sub/avm-git/lib/avm/git/issue/complete/commits.rb +0 -40
- data/sub/avm-git/lib/avm/git/issue/complete/git_subrepos.rb +0 -20
- data/sub/avm-git/lib/avm/git/issue/complete/local_branch.rb +0 -59
- data/sub/avm-git/lib/avm/git/issue/complete/local_tag.rb +0 -37
- data/sub/avm-git/lib/avm/git/issue/complete/push.rb +0 -60
- data/sub/avm-git/lib/avm/git/issue/complete/remote.rb +0 -33
- data/sub/avm-git/lib/avm/git/issue/complete/test.rb +0 -34
- data/sub/avm-git/lib/avm/git/issue/complete/tracker.rb +0 -21
- data/sub/avm-git/lib/avm/git/issue/complete/validation.rb +0 -36
- data/sub/avm-git/lib/avm/git/issue/complete/validations.rb +0 -49
- data/sub/avm-git/lib/avm/git/issue/complete/working_tree.rb +0 -19
- data/sub/avm-git/lib/avm/git/issue/complete.rb +0 -66
- data/sub/avm-git/lib/avm/git/issue.rb +0 -10
- data/sub/avm-git/lib/avm/git/launcher/base/class_methods.rb +0 -28
- data/sub/avm-git/lib/avm/git/launcher/base/dirty_files.rb +0 -21
- data/sub/avm-git/lib/avm/git/launcher/base/remotes.rb +0 -37
- data/sub/avm-git/lib/avm/git/launcher/base/subrepo.rb +0 -42
- data/sub/avm-git/lib/avm/git/launcher/base/underlying.rb +0 -54
- data/sub/avm-git/lib/avm/git/launcher/base.rb +0 -81
- data/sub/avm-git/lib/avm/git/launcher/error.rb +0 -13
- data/sub/avm-git/lib/avm/git/launcher/mirror_update.rb +0 -36
- data/sub/avm-git/lib/avm/git/launcher/publish_base.rb +0 -127
- data/sub/avm-git/lib/avm/git/launcher/remote.rb +0 -53
- data/sub/avm-git/lib/avm/git/launcher/sub_warp_base.rb +0 -36
- data/sub/avm-git/lib/avm/git/launcher/warp_base.rb +0 -63
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/local_project_mixin.rb +0 -16
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/publish.rb +0 -13
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/warp.rb +0 -25
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git.rb +0 -22
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo/publish.rb +0 -29
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo/warp.rb +0 -82
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo.rb +0 -32
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree/publish.rb +0 -12
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree/warp.rb +0 -29
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree.rb +0 -47
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/provider.rb +0 -17
- data/sub/avm-git/lib/avm/git/launcher_stereotypes.rb +0 -9
- data/sub/avm-git/lib/avm/git/organize/reference_update.rb +0 -32
- data/sub/avm-git/lib/avm/git/organize/repository.rb +0 -74
- data/sub/avm-git/lib/avm/git/organize.rb +0 -9
- data/sub/avm-git/lib/avm/git/revision_test.rb +0 -102
- data/sub/avm-git/lib/avm/git/runners/base/commit.rb +0 -96
- data/sub/avm-git/lib/avm/git/runners/base/deploy.rb +0 -108
- data/sub/avm-git/lib/avm/git/runners/base/dirty_files.rb +0 -42
- data/sub/avm-git/lib/avm/git/runners/base/organize.rb +0 -72
- data/sub/avm-git/lib/avm/git/runners/base/revisions_test.rb +0 -63
- data/sub/avm-git/lib/avm/git/runners/base/subrepo/check.rb +0 -45
- data/sub/avm-git/lib/avm/git/runners/base/subrepo/clone.rb +0 -80
- data/sub/avm-git/lib/avm/git/runners/base/subrepo/fix.rb +0 -69
- data/sub/avm-git/lib/avm/git/runners/base/subrepo.rb +0 -17
- data/sub/avm-git/lib/avm/git/runners/base.rb +0 -40
- data/sub/avm-git/lib/avm/git/runners.rb +0 -9
- data/sub/avm-git/lib/avm/git/scms/git/branch.rb +0 -28
- data/sub/avm-git/lib/avm/git/scms/git/branches.rb +0 -17
- data/sub/avm-git/lib/avm/git/scms/git/change_tracker.rb +0 -34
- data/sub/avm-git/lib/avm/git/scms/git/changed_file.rb +0 -25
- data/sub/avm-git/lib/avm/git/scms/git/changed_files.rb +0 -21
- data/sub/avm-git/lib/avm/git/scms/git/commit/deploy.rb +0 -37
- data/sub/avm-git/lib/avm/git/scms/git/commit/deploy_methods.rb +0 -24
- data/sub/avm-git/lib/avm/git/scms/git/commit.rb +0 -64
- data/sub/avm-git/lib/avm/git/scms/git/commit_dirty.rb +0 -32
- data/sub/avm-git/lib/avm/git/scms/git/commits.rb +0 -44
- data/sub/avm-git/lib/avm/git/scms/git/interval.rb +0 -28
- data/sub/avm-git/lib/avm/git/scms/git/milestones.rb +0 -18
- data/sub/avm-git/lib/avm/git/scms/git/remote.rb +0 -18
- data/sub/avm-git/lib/avm/git/scms/git/remotes.rb +0 -29
- data/sub/avm-git/lib/avm/git/scms/git/run_commit.rb +0 -54
- data/sub/avm-git/lib/avm/git/scms/git.rb +0 -46
- data/sub/avm-git/lib/avm/git/scms/git_sub_base/changed_file.rb +0 -19
- data/sub/avm-git/lib/avm/git/scms/git_sub_base/commit.rb +0 -23
- data/sub/avm-git/lib/avm/git/scms/git_sub_base/interval.rb +0 -23
- data/sub/avm-git/lib/avm/git/scms/git_sub_base.rb +0 -30
- data/sub/avm-git/lib/avm/git/scms/git_subrepo.rb +0 -33
- data/sub/avm-git/lib/avm/git/scms/git_subtree.rb +0 -29
- data/sub/avm-git/lib/avm/git/scms/provider.rb +0 -16
- data/sub/avm-git/lib/avm/git/scms.rb +0 -9
- data/sub/avm-git/lib/avm/git/subrepo_check/parent.rb +0 -48
- data/sub/avm-git/lib/avm/git/subrepo_check/remote.rb +0 -86
- data/sub/avm-git/lib/avm/git/subrepo_check/show_result.rb +0 -30
- data/sub/avm-git/lib/avm/git/subrepo_check.rb +0 -36
- data/sub/avm-git/lib/avm/git/subrepo_checks.rb +0 -57
- data/sub/avm-git/lib/avm/git/vendor/github.rb +0 -20
- data/sub/avm-git/lib/avm/git/vendor.rb +0 -9
- data/sub/avm-git/lib/avm/git/version.rb +0 -7
- data/sub/avm-git/lib/avm/git.rb +0 -16
- data/sub/avm-git/locale/en.yml +0 -6
- data/sub/avm-git/locale/pt-BR.yml +0 -6
- data/sub/avm-git/spec/lib/avm/git/launcher/base_spec.rb +0 -45
- data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec.rb +0 -83
- data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec_files/config.yml +0 -5
- data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec_settings.yml +0 -6
- data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec.rb +0 -53
- data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec_files/config.yml +0 -3
- data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec_settings.yml +0 -6
- data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec.rb +0 -126
- data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec_files/append1/stub3.txt.template +0 -1
- data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec_files/append2/stub4.txt +0 -1
- data/sub/avm-git/spec/lib/avm/git/scms/git/commit/deploy_spec.rb +0 -92
- data/sub/avm-git/spec/lib/avm/git/scms/git_spec.rb +0 -8
- data/sub/avm-git/spec/lib/avm/git/scms/git_subrepo_spec.rb +0 -8
- data/sub/avm-git/spec/lib/avm/git/vendor/github_spec.rb +0 -23
- /data/sub/{avm-git → eac_git}/Gemfile +0 -0
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /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
- /data/sub/{avm-git → eac_git}/spec/rubocop_spec.rb +0 -0
@@ -0,0 +1,46 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module EacGit
|
4
|
+
class Local
|
5
|
+
# A git-subrepo (https://github.com/ingydotnet/git-subrepo) in a [EacGit::Local].
|
6
|
+
class Subrepo
|
7
|
+
require_sub __FILE__
|
8
|
+
enable_simple_cache
|
9
|
+
|
10
|
+
common_constructor :local, :subpath do
|
11
|
+
self.subpath = subpath.to_pathname
|
12
|
+
local.raise_error "Config file \"#{config_absolute_path}\" not found" unless
|
13
|
+
config_absolute_path.file?
|
14
|
+
end
|
15
|
+
|
16
|
+
def command(subrepo_subcommand, *subrepo_subcommand_args)
|
17
|
+
local.command('subrepo', subrepo_subcommand, subpath.to_path,
|
18
|
+
*subrepo_subcommand_args)
|
19
|
+
end
|
20
|
+
|
21
|
+
delegate(*::EacGit::Local::Subrepo::Config::MAPPING.keys, to: :config)
|
22
|
+
|
23
|
+
def write_config
|
24
|
+
config_absolute_path.write(config.to_content)
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
def config_uncached
|
30
|
+
::EacGit::Local::Subrepo::Config.from_file(config_absolute_path)
|
31
|
+
end
|
32
|
+
|
33
|
+
def config_absolute_path_uncached
|
34
|
+
config_relative_path.expand_path(local.root_path)
|
35
|
+
end
|
36
|
+
|
37
|
+
def config_relative_path_uncached
|
38
|
+
subpath.join('.gitrepo')
|
39
|
+
end
|
40
|
+
|
41
|
+
def remote_uncached
|
42
|
+
::EacGit::Remote.new(remote_uri)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,124 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module EacGit
|
4
|
+
# A Git repository in local filesystem.
|
5
|
+
class Local
|
6
|
+
require_sub __FILE__, include_modules: true
|
7
|
+
include ::Comparable
|
8
|
+
|
9
|
+
HEAD_REFERENCE = 'HEAD'
|
10
|
+
|
11
|
+
class << self
|
12
|
+
def find(path)
|
13
|
+
path = path.to_pathname.expand_path
|
14
|
+
if path.join('.git').exist?
|
15
|
+
new(path)
|
16
|
+
elsif path.to_path != '/'
|
17
|
+
find(path.parent)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
common_constructor :root_path do
|
23
|
+
self.root_path = root_path.to_pathname
|
24
|
+
end
|
25
|
+
|
26
|
+
def <=>(other)
|
27
|
+
root_path <=> other.root_path
|
28
|
+
end
|
29
|
+
|
30
|
+
# Retrieves a local branch.
|
31
|
+
#
|
32
|
+
# @param name [String] Ex.: for "refs/heads/master", name should be "master".
|
33
|
+
# @return [EacGit::Local::Branch]
|
34
|
+
def branch(name)
|
35
|
+
::EacGit::Local::Branch.new(self, name)
|
36
|
+
end
|
37
|
+
|
38
|
+
def commit(ref, required = false) # rubocop:disable Style/OptionalBooleanParameter
|
39
|
+
rev_parse(ref, required).if_present { |v| ::EacGit::Local::Commit.new(self, v) }
|
40
|
+
end
|
41
|
+
|
42
|
+
def commitize(source)
|
43
|
+
if source.is_a?(::EacGit::Local::Commit)
|
44
|
+
return source if source.repo == self
|
45
|
+
|
46
|
+
source = source.id
|
47
|
+
end
|
48
|
+
|
49
|
+
source.to_s.strip.if_present(nil) { |v| ::EacGit::Local::Commit.new(self, v) }
|
50
|
+
end
|
51
|
+
|
52
|
+
# Retrieves the current local branch.
|
53
|
+
#
|
54
|
+
# @return [EacGit::Local::Branch, nil]
|
55
|
+
def current_branch
|
56
|
+
command('symbolic-ref', '--quiet', HEAD_REFERENCE)
|
57
|
+
.execute!(exit_outputs: { 256 => '' })
|
58
|
+
.gsub(%r{\Arefs/heads/}, '').strip
|
59
|
+
.if_present { |v| branch(v) }
|
60
|
+
end
|
61
|
+
|
62
|
+
def descendant?(descendant, ancestor)
|
63
|
+
base = merge_base(descendant, ancestor)
|
64
|
+
return false if base.blank?
|
65
|
+
|
66
|
+
revparse = command('rev-parse', '--verify', ancestor).execute!.strip
|
67
|
+
base == revparse
|
68
|
+
end
|
69
|
+
|
70
|
+
# @return [EacGit::Local::Commit
|
71
|
+
def head(required = true) # rubocop:disable Style/OptionalBooleanParameter
|
72
|
+
commit(HEAD_REFERENCE, required)
|
73
|
+
end
|
74
|
+
|
75
|
+
def merge_base(*commits)
|
76
|
+
refs = commits.dup
|
77
|
+
while refs.count > 1 # rubocop:disable Style/CollectionQuerying
|
78
|
+
refs[1] = merge_base_pair(refs[0], refs[1])
|
79
|
+
return nil if refs[1].blank?
|
80
|
+
|
81
|
+
refs.shift
|
82
|
+
end
|
83
|
+
refs.first
|
84
|
+
end
|
85
|
+
|
86
|
+
def command(*args)
|
87
|
+
::EacGit::Executables.git.command('-C', root_path.to_path, *args)
|
88
|
+
end
|
89
|
+
|
90
|
+
def raise_error(message)
|
91
|
+
raise "#{root_path}: #{message}"
|
92
|
+
end
|
93
|
+
|
94
|
+
def rev_parse(ref, required = false) # rubocop:disable Style/OptionalBooleanParameter
|
95
|
+
r = command('rev-parse', ref).execute!(exit_outputs: { 128 => nil, 32_768 => nil })
|
96
|
+
r.strip! if r.is_a?(String)
|
97
|
+
return r if r.present?
|
98
|
+
return nil unless required
|
99
|
+
|
100
|
+
raise_error "Reference \"#{ref}\" not found"
|
101
|
+
end
|
102
|
+
|
103
|
+
def subrepo(subpath)
|
104
|
+
::EacGit::Local::Subrepo.new(self, subpath)
|
105
|
+
end
|
106
|
+
|
107
|
+
# @return [Array<EacGit::Local::Subrepo>]
|
108
|
+
def subrepos
|
109
|
+
command('subrepo', '-q', 'status').execute!.split("\n").map(&:strip).select(&:present?)
|
110
|
+
.map { |subpath| subrepo(subpath) }
|
111
|
+
end
|
112
|
+
|
113
|
+
def to_s
|
114
|
+
"#{self.class}[#{root_path}]"
|
115
|
+
end
|
116
|
+
|
117
|
+
private
|
118
|
+
|
119
|
+
def merge_base_pair(commit1, commit2)
|
120
|
+
command('merge-base', commit1, commit2).execute!(exit_outputs: { 256 => nil })
|
121
|
+
.if_present(nil, &:strip)
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module EacGit
|
4
|
+
# A Git remote repository referenced by URI.
|
5
|
+
class Remote
|
6
|
+
include ::EacGit::RemoteLike
|
7
|
+
|
8
|
+
common_constructor :uri
|
9
|
+
|
10
|
+
# @return [EacRubyUtils::Envs::Command
|
11
|
+
def git_command(...)
|
12
|
+
::EacGit::Executables.git.command(...)
|
13
|
+
end
|
14
|
+
|
15
|
+
# @return [String]
|
16
|
+
def remote_reference
|
17
|
+
uri
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module EacGit
|
4
|
+
module RemoteLike
|
5
|
+
class LsResult
|
6
|
+
class << self
|
7
|
+
def by_ls_remote_command_output(output)
|
8
|
+
new(
|
9
|
+
output.each_line.map { |line| line.strip.split(/\s+/) }.to_h { |x| [x[1], x[0]] } # rubocop:disable Style/MapToHash
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
common_constructor :hashes
|
15
|
+
delegate :fetch, :[], :count, :any?, :empty?, to: :hashes
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module EacGit
|
4
|
+
module RemoteLike
|
5
|
+
require_sub __FILE__
|
6
|
+
enable_abstract_methods
|
7
|
+
|
8
|
+
# @return [String] The output of command "git fetch".
|
9
|
+
def fetch
|
10
|
+
local.command('fetch', name).execute!
|
11
|
+
end
|
12
|
+
|
13
|
+
# @return [EacRubyUtils::Envs::Command
|
14
|
+
def git_command(*_args)
|
15
|
+
raise_abstract_method __method__
|
16
|
+
end
|
17
|
+
|
18
|
+
# @return [EacGit::RemoteLike::LsResult]
|
19
|
+
def ls
|
20
|
+
::EacGit::RemoteLike::LsResult.by_ls_remote_command_output(
|
21
|
+
git_command('ls-remote', remote_reference).execute!
|
22
|
+
)
|
23
|
+
end
|
24
|
+
|
25
|
+
# @return [String]
|
26
|
+
def remote_reference
|
27
|
+
raise_abstract_method __method__
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module EacGit
|
4
|
+
module Rspec
|
5
|
+
module Setup
|
6
|
+
def self.extended(setup_obj)
|
7
|
+
setup_obj.setup_conditional_git
|
8
|
+
setup_obj.setup_stubbed_git_local_repo
|
9
|
+
end
|
10
|
+
|
11
|
+
def setup_conditional_git
|
12
|
+
conditional(:git) { ::EacGit::Executables.git.validate }
|
13
|
+
end
|
14
|
+
|
15
|
+
def setup_stubbed_git_local_repo
|
16
|
+
rspec_config.include ::EacGit::Rspec::StubbedGitLocalRepo
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'fileutils'
|
4
|
+
|
5
|
+
module EacGit
|
6
|
+
module Rspec
|
7
|
+
module StubbedGitLocalRepo
|
8
|
+
class Directory < ::EacGit::Rspec::StubbedGitLocalRepo::FsObject
|
9
|
+
# @return [self]
|
10
|
+
def create
|
11
|
+
::FileUtils.mkdir_p(path)
|
12
|
+
self
|
13
|
+
end
|
14
|
+
|
15
|
+
# @return [self]
|
16
|
+
def delete
|
17
|
+
::FileUtils.rm_rf(path)
|
18
|
+
self
|
19
|
+
end
|
20
|
+
|
21
|
+
# @param subpath [Array<String>]
|
22
|
+
# @return [EacGit::Rspec::StubbedGitLocalRepo::Directory]
|
23
|
+
def directory(*subpath)
|
24
|
+
git.directory(*self.subpath, *subpath)
|
25
|
+
end
|
26
|
+
|
27
|
+
# @param subpath [Array<String>]
|
28
|
+
# @return [EacGit::Rspec::StubbedGitLocalRepo::File]
|
29
|
+
def file(*subpath)
|
30
|
+
git.file(*self.subpath, *subpath)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'fileutils'
|
4
|
+
|
5
|
+
module EacGit
|
6
|
+
module Rspec
|
7
|
+
module StubbedGitLocalRepo
|
8
|
+
class File < ::EacGit::Rspec::StubbedGitLocalRepo::FsObject
|
9
|
+
def touch
|
10
|
+
::FileUtils.touch(path.to_path)
|
11
|
+
end
|
12
|
+
|
13
|
+
def delete
|
14
|
+
path.unlink
|
15
|
+
end
|
16
|
+
|
17
|
+
delegate :write, to: :path
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module EacGit
|
4
|
+
module Rspec
|
5
|
+
module StubbedGitLocalRepo
|
6
|
+
class FsObject
|
7
|
+
# @!attribute [r] git
|
8
|
+
# @param git [EacGit::Rspec::StubbedGitLocalRepo::Repository]
|
9
|
+
|
10
|
+
# @!attribute [r] subpath
|
11
|
+
# @param git [Array<String>]
|
12
|
+
|
13
|
+
# @!method initialize(git, subpath)
|
14
|
+
# @param git [EacGit::Rspec::StubbedGitLocalRepo::Repository]
|
15
|
+
# @param subpath [Array<String>
|
16
|
+
common_constructor :git, :subpath
|
17
|
+
|
18
|
+
# @return [Pathname]
|
19
|
+
def path
|
20
|
+
git.root_path.join(*subpath)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'securerandom'
|
4
|
+
|
5
|
+
module EacGit
|
6
|
+
module Rspec
|
7
|
+
module StubbedGitLocalRepo
|
8
|
+
class Repository < ::EacGit::Local
|
9
|
+
# @return [EacGit::Rspec::StubbedGitLocalRepo::Directory]
|
10
|
+
def directory(*subpath)
|
11
|
+
::EacGit::Rspec::StubbedGitLocalRepo::Directory.new(self, subpath)
|
12
|
+
end
|
13
|
+
|
14
|
+
def file(*subpath)
|
15
|
+
::EacGit::Rspec::StubbedGitLocalRepo::File.new(self, subpath)
|
16
|
+
end
|
17
|
+
|
18
|
+
# @return [EacGit::Local::Commit
|
19
|
+
def random_commit
|
20
|
+
content = ::SecureRandom.hex
|
21
|
+
file = "#{content}.txt"
|
22
|
+
file(file).write(content)
|
23
|
+
command('add', file).execute!
|
24
|
+
command('commit', '-m', "Random commit: #{file}.").execute!
|
25
|
+
head
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'tmpdir'
|
4
|
+
|
5
|
+
module EacGit
|
6
|
+
module Rspec
|
7
|
+
module StubbedGitLocalRepo
|
8
|
+
def stubbed_git_local_repo(bare = false) # rubocop:disable Style/OptionalBooleanParameter
|
9
|
+
path = ::Dir.mktmpdir
|
10
|
+
::EacRubyUtils::Envs.local.command(stubbed_git_local_repo_args(path, bare)).execute!
|
11
|
+
repo = ::EacGit::Rspec::StubbedGitLocalRepo::Repository.new(path)
|
12
|
+
repo.command('config', 'user.email', 'theuser@example.net').execute!
|
13
|
+
repo.command('config', 'user.name', 'The User').execute!
|
14
|
+
repo
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def stubbed_git_local_repo_args(path, bare)
|
20
|
+
r = %w[git init]
|
21
|
+
r << '--bare' if bare
|
22
|
+
r + [path]
|
23
|
+
end
|
24
|
+
|
25
|
+
require_sub __FILE__
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
RSpec.describe(EacGit::Executables, :git) do
|
4
|
+
it 'output version' do
|
5
|
+
expect(described_class.git.command('--version').execute!).to be_present
|
6
|
+
end
|
7
|
+
|
8
|
+
it 'subrepo output version' do
|
9
|
+
expect(described_class.git.command('subrepo', '--version').execute!).to be_present
|
10
|
+
end
|
11
|
+
end
|
data/sub/{avm-git/spec/lib/avm/git → eac_git/spec/lib/eac_git/local}/commit/diff_tree_line_spec.rb
RENAMED
@@ -1,8 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
RSpec.describe Avm::Git::Commit::DiffTreeLine, :git do
|
3
|
+
RSpec.describe EacGit::Local::Commit::DiffTreeLine, :git do
|
6
4
|
include_examples 'source_target_fixtures', __FILE__ do
|
7
5
|
def source_data(source_file)
|
8
6
|
File.read(source_file).each_line.map do |line|
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'tmpdir'
|
4
4
|
|
5
|
-
RSpec.describe
|
5
|
+
RSpec.describe EacGit::Local::Commit, :git do
|
6
6
|
let(:git) { stubbed_git_local_repo }
|
7
7
|
|
8
8
|
let(:first_commit_sha1) do
|
@@ -26,9 +26,9 @@ RSpec.describe Avm::Git::Commit, :git do
|
|
26
26
|
let(:first_commit) { described_class.new(git, first_commit_sha1) }
|
27
27
|
let(:second_commit) { described_class.new(git, second_commit_sha1) }
|
28
28
|
|
29
|
-
describe '#
|
30
|
-
it { expect(first_commit.
|
31
|
-
it { expect(second_commit.
|
29
|
+
describe '#changed_files' do
|
30
|
+
it { expect(first_commit.changed_files.count).to eq(2) }
|
31
|
+
it { expect(second_commit.changed_files.count).to eq(3) }
|
32
32
|
|
33
33
|
{
|
34
34
|
'first_commit' => %w[a.txt b.txt],
|
@@ -37,16 +37,16 @@ RSpec.describe Avm::Git::Commit, :git do
|
|
37
37
|
filenames.each do |filename|
|
38
38
|
it "find file \"#{filename}\" in commit \"#{commit_name}\"" do
|
39
39
|
commit = send(commit_name)
|
40
|
-
file = commit.
|
41
|
-
expect(file).to be_a(
|
40
|
+
file = commit.changed_files.find { |f| f.path == filename }
|
41
|
+
expect(file).to be_a(EacGit::Local::Commit::ChangedFile)
|
42
42
|
end
|
43
43
|
end
|
44
44
|
end
|
45
45
|
end
|
46
46
|
|
47
|
-
describe '#
|
48
|
-
it { expect(first_commit.
|
49
|
-
it { expect(second_commit.
|
47
|
+
describe '#changed_files_size' do
|
48
|
+
it { expect(first_commit.changed_files_size).to eq(6) }
|
49
|
+
it { expect(second_commit.changed_files_size).to eq(8) }
|
50
50
|
end
|
51
51
|
|
52
52
|
describe '#root_child?' do
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'tmpdir'
|
4
|
+
|
5
|
+
RSpec.describe EacGit::Local, '#dirty_files', :git do
|
6
|
+
let(:repo) { stubbed_git_local_repo }
|
7
|
+
let(:dirty_files_paths) { Set.new(repo.dirty_files.lazy.map(&:path).map(&:to_path)) }
|
8
|
+
|
9
|
+
before do
|
10
|
+
repo.file('a_file').touch
|
11
|
+
repo.directory('b_directory').create.file('c_file').touch
|
12
|
+
repo.file('d file').touch
|
13
|
+
end
|
14
|
+
|
15
|
+
it do
|
16
|
+
expect(dirty_files_paths).to eq(Set.new(['a_file', 'b_directory/c_file', 'd file']))
|
17
|
+
end
|
18
|
+
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'eac_git'
|
4
4
|
require 'eac_ruby_gem_support'
|
5
|
-
EacRubyUtils::Rspec.default_setup_create(File.expand_path('..', __dir__))
|
5
|
+
EacRubyUtils::Rspec.default_setup_create(File.expand_path('..', __dir__))
|
@@ -0,0 +1,110 @@
|
|
1
|
+
---
|
2
|
+
version: 0.4.1
|
3
|
+
date: Thu Jan 9 17:11:21 CST 2020
|
4
|
+
- Fix Bash version error messages and add to .rc
|
5
|
+
- Nicer YAML formatting in .travis.yml
|
6
|
+
- Wrap a long line
|
7
|
+
- Update the docs
|
8
|
+
- Force `make update` to always update docs
|
9
|
+
- Don't use XXX in perl stuff
|
10
|
+
- Add testing on MacOS
|
11
|
+
- Remove conflicting -C from install -d commands.
|
12
|
+
- Update version requirement documentation
|
13
|
+
- Correct error message in branch
|
14
|
+
- Use topo-order in subrepo branch
|
15
|
+
- Make “git subrepo clean -f ...” delete refs correctly
|
16
|
+
- Fix #410 Push empty repositories with recent git versions
|
17
|
+
- Make subrepo work when run in a worktree
|
18
|
+
- Simplify finding subrepos
|
19
|
+
- Ask git to find the .gitrepo files
|
20
|
+
- Doc: fix sentence repetition
|
21
|
+
- Fix typos
|
22
|
+
- Fixed typo
|
23
|
+
- Travis CI not checking out a branch.
|
24
|
+
---
|
25
|
+
version: 0.4.0
|
26
|
+
date: Thu Nov 8 12:26:38 CET 2018
|
27
|
+
changes:
|
28
|
+
- Fix #325 Do not squash main repo commits
|
29
|
+
- Improve error message for worktree handling
|
30
|
+
- Make version checking portable. #307
|
31
|
+
- #307, improve version check
|
32
|
+
- #307, update version requirement
|
33
|
+
- Fix part #308, Add stderr output if commands fail
|
34
|
+
- Fix #306: Add check to prevent following commits with no .gitrepo
|
35
|
+
- Remove dry-run flag as it's not implemented. Make sure branch --force delete worktree
|
36
|
+
- Fix #296, Replace --first-parent with --ancestry-path
|
37
|
+
- Fix #291, specify Trusty host to get new 2.x git
|
38
|
+
- Fix #258, add --no-tags to git fetch
|
39
|
+
- Test that no remotes are created during clone
|
40
|
+
- #257 Remove remote creation to avoid problems with fetch --all
|
41
|
+
- (origin/issue/150_to_0.4.0) Fix remove-worktree, remove unused parameters
|
42
|
+
- Regenerate completion files
|
43
|
+
- filter-branch operation should not be done on HEAD
|
44
|
+
- Cleanup push and add hint to push directly after pull
|
45
|
+
- Simplify cleanup and add worktree to status
|
46
|
+
- Add --method option to init/clone, add a 'config' command
|
47
|
+
- Updated unit tests to support the new logic
|
48
|
+
- Use 'git worktree' for merge/rebase
|
49
|
+
- Update docs to reflect how things should work
|
50
|
+
- Make it possible to specify commit messages
|
51
|
+
- Redesign, trash the tree hash approach and use merges instead
|
52
|
+
- Add release branches to travis-ci
|
53
|
+
- Add --method option to init/clone, add a 'config' command
|
54
|
+
- Detect multiple pulls, use -u flag to decide
|
55
|
+
- Don't reuse previous commit message when using --all
|
56
|
+
- Update the docs for pull and push
|
57
|
+
- Update error messages when failing merge/rebase
|
58
|
+
- Fix env var bug in test/push.t
|
59
|
+
- Do not overwrite author information
|
60
|
+
---
|
61
|
+
version: 0.3.1
|
62
|
+
date: Tue Jan 3 23:08:56 PST 2017
|
63
|
+
changes:
|
64
|
+
- Updated release for homebrew
|
65
|
+
- Fix #192
|
66
|
+
---
|
67
|
+
version: 0.3.0
|
68
|
+
date: Wed Dec 2 19:19:43 PST 2015
|
69
|
+
changes:
|
70
|
+
- Fix issue #98 and host of others (89, 91, 95, 96)
|
71
|
+
- Adds support for the merge-base command
|
72
|
+
- Adds stability to many commands
|
73
|
+
- Command completion updates
|
74
|
+
- Rename `init` to `.rc`
|
75
|
+
- @grimmySwe++ @dzzh++ @jrosdahl++ @perlpunk++
|
76
|
+
---
|
77
|
+
version: 0.2.3
|
78
|
+
date: Sun Aug 9 13:44:22 PDT 2015
|
79
|
+
changes:
|
80
|
+
- Fix issues #75 and #76
|
81
|
+
---
|
82
|
+
version: 0.2.2
|
83
|
+
date: Wed Jul 22 09:45:13 PDT 2015
|
84
|
+
changes:
|
85
|
+
- Added the `init` subcommand
|
86
|
+
- Applied doc fixes
|
87
|
+
---
|
88
|
+
version: 0.2.1
|
89
|
+
date: Sat Mar 28 07:52:22 PDT 2015
|
90
|
+
changes:
|
91
|
+
- Allows subrepo clone to clone to an empty branch; fixes #26.
|
92
|
+
- Refs in status
|
93
|
+
- Empty parent set to 'none' in .gitrepo file.
|
94
|
+
- Bug fixes
|
95
|
+
---
|
96
|
+
version: 0.2.0
|
97
|
+
date: Sat Jan 24 06:22:05 PST 2015
|
98
|
+
changes:
|
99
|
+
- Massive overhaul
|
100
|
+
- .gitrepo files remain the same so backwards compatible
|
101
|
+
- Introduce the branch and commit subcommands
|
102
|
+
- The checkout subcommand goes away
|
103
|
+
- Operations work much smoother like normal Git flow
|
104
|
+
- Much more testing
|
105
|
+
- Better doc
|
106
|
+
---
|
107
|
+
version: 0.1.0
|
108
|
+
date: Fri Feb 21 12:25:53 2014 -0800
|
109
|
+
changes:
|
110
|
+
- First version
|