mygithug 0.5.1
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 +7 -0
- data/.gitignore +8 -0
- data/.rspec +2 -0
- data/.travis.yml +18 -0
- data/Gemfile +4 -0
- data/LICENCE.txt +22 -0
- data/README.md +55 -0
- data/Rakefile +6 -0
- data/bin/mygithug +4 -0
- data/levels/add.rb +30 -0
- data/levels/alias_lg.rb +55 -0
- data/levels/alias_st.rb +22 -0
- data/levels/bisect/.githug/COMMIT_EDITMSG +1 -0
- data/levels/bisect/.githug/HEAD +1 -0
- data/levels/bisect/.githug/ORIG_HEAD +1 -0
- data/levels/bisect/.githug/config +7 -0
- data/levels/bisect/.githug/description +1 -0
- data/levels/bisect/.githug/gitk.cache +3 -0
- data/levels/bisect/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/bisect/.githug/hooks/commit-msg.sample +24 -0
- data/levels/bisect/.githug/hooks/post-commit.sample +8 -0
- data/levels/bisect/.githug/hooks/post-receive.sample +15 -0
- data/levels/bisect/.githug/hooks/post-update.sample +8 -0
- data/levels/bisect/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/bisect/.githug/hooks/pre-commit.sample +46 -0
- data/levels/bisect/.githug/hooks/pre-rebase.sample +172 -0
- data/levels/bisect/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/bisect/.githug/hooks/update.sample +128 -0
- data/levels/bisect/.githug/index +0 -0
- data/levels/bisect/.githug/info/exclude +6 -0
- data/levels/bisect/.githug/info/refs +9 -0
- data/levels/bisect/.githug/logs/HEAD +21 -0
- data/levels/bisect/.githug/logs/refs/heads/master +21 -0
- data/levels/bisect/.githug/objects/info/packs +2 -0
- data/levels/bisect/.githug/objects/pack/pack-59fab357f3158a9640633de6a3326ed79a2b4fe6.idx +0 -0
- data/levels/bisect/.githug/objects/pack/pack-59fab357f3158a9640633de6a3326ed79a2b4fe6.pack +0 -0
- data/levels/bisect/.githug/packed-refs +10 -0
- data/levels/bisect/makefile +2 -0
- data/levels/bisect/prog.rb +3 -0
- data/levels/bisect/test.rb +4 -0
- data/levels/bisect.rb +15 -0
- data/levels/blame/.githug/COMMIT_EDITMSG +1 -0
- data/levels/blame/.githug/HEAD +1 -0
- data/levels/blame/.githug/config +5 -0
- data/levels/blame/.githug/description +1 -0
- data/levels/blame/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/blame/.githug/hooks/commit-msg.sample +24 -0
- data/levels/blame/.githug/hooks/post-commit.sample +8 -0
- data/levels/blame/.githug/hooks/post-receive.sample +15 -0
- data/levels/blame/.githug/hooks/post-update.sample +8 -0
- data/levels/blame/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/blame/.githug/hooks/pre-commit.sample +46 -0
- data/levels/blame/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/blame/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/blame/.githug/hooks/update.sample +128 -0
- data/levels/blame/.githug/index +0 -0
- data/levels/blame/.githug/info/exclude +6 -0
- data/levels/blame/.githug/logs/HEAD +5 -0
- data/levels/blame/.githug/logs/refs/heads/master +5 -0
- data/levels/blame/.githug/objects/00/d6bf5341b263ccaf32e7973be55126eb30a343 +0 -0
- data/levels/blame/.githug/objects/05/07c26fed4d111a8344763be9af68af90f0ecf2 +0 -0
- data/levels/blame/.githug/objects/09/4094808dc6dc336c93c8602190a9e5f7bd6a11 +2 -0
- data/levels/blame/.githug/objects/21/15d78864000292628872941b14521f90187eed +0 -0
- data/levels/blame/.githug/objects/31/11dda1f5b08d50ac44b99acabfa54f1e6e72b0 +2 -0
- data/levels/blame/.githug/objects/50/8db115ba34a0e4e8667653aebe0265bb4f7e80 +0 -0
- data/levels/blame/.githug/objects/5e/8863df752e3b7f2150df7c78f12bef6f1ff00e +0 -0
- data/levels/blame/.githug/objects/67/788a4b90180c7588d7bd0ad8032957b0f429ba +0 -0
- data/levels/blame/.githug/objects/70/d00535a3a25b0ac1736dd3d306d6271e5427ed +0 -0
- data/levels/blame/.githug/objects/97/bdd0cccf9f4b8730f78cb53a81a74f205dbcc2 +1 -0
- data/levels/blame/.githug/objects/ab/08819ba3ffaeba17d4f870dc3a458a904519f4 +0 -0
- data/levels/blame/.githug/objects/be/96fe46de646f6a5c728f90cc884aef96fa1d6f +0 -0
- data/levels/blame/.githug/objects/cd/9c6b9ab1a6f56cccc69b6aa661f1d67ba5fb46 +0 -0
- data/levels/blame/.githug/objects/dd/df1d8ebd60eec169c15a5b23cb49a58d2ed5a0 +4 -0
- data/levels/blame/.githug/objects/ff/d39c2dbfd94bdbca06d48686e0cbda642f3de7 +1 -0
- data/levels/blame/.githug/refs/heads/master +1 -0
- data/levels/blame/config.rb +16 -0
- data/levels/blame.rb +15 -0
- data/levels/branch.rb +18 -0
- data/levels/branch_at.rb +25 -0
- data/levels/checkout.rb +18 -0
- data/levels/checkout_file.rb +25 -0
- data/levels/checkout_tag.rb +39 -0
- data/levels/checkout_tag_over_branch.rb +46 -0
- data/levels/cherry-pick/.githug/COMMIT_EDITMSG +1 -0
- data/levels/cherry-pick/.githug/HEAD +1 -0
- data/levels/cherry-pick/.githug/config +6 -0
- data/levels/cherry-pick/.githug/description +1 -0
- data/levels/cherry-pick/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/cherry-pick/.githug/hooks/commit-msg.sample +24 -0
- data/levels/cherry-pick/.githug/hooks/post-update.sample +8 -0
- data/levels/cherry-pick/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/cherry-pick/.githug/hooks/pre-commit.sample +50 -0
- data/levels/cherry-pick/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/cherry-pick/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/cherry-pick/.githug/hooks/update.sample +128 -0
- data/levels/cherry-pick/.githug/index +0 -0
- data/levels/cherry-pick/.githug/info/exclude +6 -0
- data/levels/cherry-pick/.githug/logs/HEAD +14 -0
- data/levels/cherry-pick/.githug/logs/refs/heads/master +4 -0
- data/levels/cherry-pick/.githug/logs/refs/heads/new-feature +6 -0
- data/levels/cherry-pick/.githug/objects/05/aa97588aff673dcf00e0e1b835d6ec6207a7d9 +0 -0
- data/levels/cherry-pick/.githug/objects/14/ad8f1413c40e0e5be6f6cbdec392a783c1d754 +0 -0
- data/levels/cherry-pick/.githug/objects/1b/912962174dd58fbbf1627ec816fa6672c70854 +0 -0
- data/levels/cherry-pick/.githug/objects/22/f99f3abfd02190a760388c8845c190247859fe +0 -0
- data/levels/cherry-pick/.githug/objects/23/2d266a78d5ef7196f1ede14972ccf7ee19e587 +0 -0
- data/levels/cherry-pick/.githug/objects/31/68bdc3ae7e0ab987dda238beab9c0582c7fc07 +0 -0
- data/levels/cherry-pick/.githug/objects/49/4fa3fc1c15986f9a950aba8607da591223614c +0 -0
- data/levels/cherry-pick/.githug/objects/4a/1961bce62840eaef9c4392fe5cc799e38c9b7b +0 -0
- data/levels/cherry-pick/.githug/objects/54/22c2405527c05c23b243b2535a97b6cefa1427 +0 -0
- data/levels/cherry-pick/.githug/objects/54/f3308533fd4400c94c4cd5827cd38036a67a76 +0 -0
- data/levels/cherry-pick/.githug/objects/58/a8c8edcfdd00c6d8cce9aada8f987a1677571f +0 -0
- data/levels/cherry-pick/.githug/objects/6e/dea632d9540e060bca97dda0897df2b7da0ec0 +2 -0
- data/levels/cherry-pick/.githug/objects/85/4e7ac38b3e8df02ea1480ec45aa9e7865f03d7 +0 -0
- data/levels/cherry-pick/.githug/objects/93/3a97260a11a5ee49bb8a4b7b097cb2fb38f85c +0 -0
- data/levels/cherry-pick/.githug/objects/9a/e59e88e6af362c069847e621b971bafff158ac +0 -0
- data/levels/cherry-pick/.githug/objects/a2/14badc644facc4722083aedf91d9339ffdffbf +0 -0
- data/levels/cherry-pick/.githug/objects/b3/0c6a965415df6aef5f2903f9892fa5481152fc +0 -0
- data/levels/cherry-pick/.githug/objects/c6/0c612734f25b9c989d954621491e9ca3c9e061 +0 -0
- data/levels/cherry-pick/.githug/objects/ca/32a6dac7b6f97975edbe19a4296c2ee7682f68 +0 -0
- data/levels/cherry-pick/.githug/objects/cf/d8ce38c22c5fe83cc04e23f94646464f20d990 +0 -0
- data/levels/cherry-pick/.githug/objects/d5/02e68bfe397140e4ac2a819b138545abca604e +0 -0
- data/levels/cherry-pick/.githug/objects/d5/123e58b37fd886dff2b96bfe5ec08a498192aa +0 -0
- data/levels/cherry-pick/.githug/objects/ea/2a47c19b85fc321e2737ddc49db3deeba3a1b5 +0 -0
- data/levels/cherry-pick/.githug/objects/ea/3dbcc5e2d2359698c3606b0ec44af9f76def54 +0 -0
- data/levels/cherry-pick/.githug/refs/heads/master +1 -0
- data/levels/cherry-pick/.githug/refs/heads/new-feature +1 -0
- data/levels/cherry-pick/README.md +2 -0
- data/levels/cherry-pick/hardcore-math.js +3 -0
- data/levels/cherry-pick/nokia.js +1 -0
- data/levels/cherry-pick.rb +19 -0
- data/levels/clone.rb +10 -0
- data/levels/clone_to_folder.rb +10 -0
- data/levels/commit.rb +17 -0
- data/levels/commit_amend.rb +23 -0
- data/levels/commit_in_future.rb +19 -0
- data/levels/config.rb +33 -0
- data/levels/conflict/.githug/COMMIT_EDITMSG +14 -0
- data/levels/conflict/.githug/HEAD +1 -0
- data/levels/conflict/.githug/config +5 -0
- data/levels/conflict/.githug/description +1 -0
- data/levels/conflict/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/conflict/.githug/hooks/commit-msg.sample +24 -0
- data/levels/conflict/.githug/hooks/post-update.sample +8 -0
- data/levels/conflict/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/conflict/.githug/hooks/pre-commit.sample +50 -0
- data/levels/conflict/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/conflict/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/conflict/.githug/hooks/update.sample +128 -0
- data/levels/conflict/.githug/index +0 -0
- data/levels/conflict/.githug/info/exclude +6 -0
- data/levels/conflict/.githug/logs/HEAD +12 -0
- data/levels/conflict/.githug/logs/refs/heads/master +4 -0
- data/levels/conflict/.githug/logs/refs/heads/mybranch +5 -0
- data/levels/conflict/.githug/objects/1d/b9aa5013e47f1482ec90323d926171a99c28af +0 -0
- data/levels/conflict/.githug/objects/25/b3f9c339430b35ae5822b2ef90e763284dc007 +0 -0
- data/levels/conflict/.githug/objects/2d/0d90051e320215f54f357e746c9838490557e7 +1 -0
- data/levels/conflict/.githug/objects/30/6868e3258be1f35ae43db71e3a6d7edf42ffe7 +0 -0
- data/levels/conflict/.githug/objects/30/cc28e66966109bb5bfbe96d6c817c367d2050a +0 -0
- data/levels/conflict/.githug/objects/38/21e4362c5a76db1112b46b9210670cd5bab482 +0 -0
- data/levels/conflict/.githug/objects/3c/b65bef44ae724ddf9e89640e7e2754dea1a47f +0 -0
- data/levels/conflict/.githug/objects/3d/7aec017559be2b61cab850dafdcb2b6212f1c3 +1 -0
- data/levels/conflict/.githug/objects/40/e20a455ac2731ad25c297b03aa543d7eedf6ab +0 -0
- data/levels/conflict/.githug/objects/44/30fd3f45c832e685350417600a9862c94d20f1 +0 -0
- data/levels/conflict/.githug/objects/46/677964e679f3e727356d0860c643a12a87902b +0 -0
- data/levels/conflict/.githug/objects/50/a127cb066eb903a6fa59d71802c10cb442fb3b +0 -0
- data/levels/conflict/.githug/objects/55/ad5af2a93afa778971e3d04faf20f6c368b6ba +0 -0
- data/levels/conflict/.githug/objects/6b/0c0b32bdca3af9beb831744cb755d6fdc7c7c0 +2 -0
- data/levels/conflict/.githug/objects/75/179304f4fab00613f08a9412b6cb0965bfa564 +2 -0
- data/levels/conflict/.githug/objects/7c/36daf29660ae4a2f09345427ef76f1d38f902f +0 -0
- data/levels/conflict/.githug/objects/88/e0473c9da347c6311f5f8eca8d256bf25402b6 +2 -0
- data/levels/conflict/.githug/objects/bd/c7bec8acae9b3eabf0a15b223a48211b7a89a1 +2 -0
- data/levels/conflict/.githug/objects/c7/97f979cf24ba148bf10d5e26f5d7402dd5f2e1 +0 -0
- data/levels/conflict/.githug/objects/da/ae380200ed6eeaafd926177018e8ff3009b988 +0 -0
- data/levels/conflict/.githug/refs/heads/master +1 -0
- data/levels/conflict/.githug/refs/heads/mybranch +1 -0
- data/levels/conflict/poem.txt +5 -0
- data/levels/conflict.rb +23 -0
- data/levels/congratulation.rb +10 -0
- data/levels/contribute.rb +25 -0
- data/levels/delete_branch/.githug/COMMIT_EDITMSG +1 -0
- data/levels/delete_branch/.githug/HEAD +1 -0
- data/levels/delete_branch/.githug/config +7 -0
- data/levels/delete_branch/.githug/description +1 -0
- data/levels/delete_branch/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/delete_branch/.githug/hooks/commit-msg.sample +24 -0
- data/levels/delete_branch/.githug/hooks/post-update.sample +8 -0
- data/levels/delete_branch/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/delete_branch/.githug/hooks/pre-commit.sample +49 -0
- data/levels/delete_branch/.githug/hooks/pre-push.sample +53 -0
- data/levels/delete_branch/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/delete_branch/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/delete_branch/.githug/hooks/update.sample +128 -0
- data/levels/delete_branch/.githug/index +0 -0
- data/levels/delete_branch/.githug/info/exclude +6 -0
- data/levels/delete_branch/.githug/logs/HEAD +4 -0
- data/levels/delete_branch/.githug/logs/refs/heads/delete_me +1 -0
- data/levels/delete_branch/.githug/logs/refs/heads/master +1 -0
- data/levels/delete_branch/.githug/objects/b6/0afe294eb3c200d646995c9e0234470157c1b0 +2 -0
- data/levels/delete_branch/.githug/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
- data/levels/delete_branch/.githug/objects/e8/0ad49ace82167de62e498622d70377d913c79e +0 -0
- data/levels/delete_branch/.githug/refs/heads/delete_me +1 -0
- data/levels/delete_branch/.githug/refs/heads/master +1 -0
- data/levels/delete_branch/readme +0 -0
- data/levels/delete_branch.rb +15 -0
- data/levels/diff/.githug/COMMIT_EDITMSG +1 -0
- data/levels/diff/.githug/HEAD +1 -0
- data/levels/diff/.githug/config +5 -0
- data/levels/diff/.githug/description +1 -0
- data/levels/diff/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/diff/.githug/hooks/commit-msg.sample +24 -0
- data/levels/diff/.githug/hooks/post-commit.sample +8 -0
- data/levels/diff/.githug/hooks/post-receive.sample +15 -0
- data/levels/diff/.githug/hooks/post-update.sample +8 -0
- data/levels/diff/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/diff/.githug/hooks/pre-commit.sample +46 -0
- data/levels/diff/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/diff/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/diff/.githug/hooks/update.sample +128 -0
- data/levels/diff/.githug/index +0 -0
- data/levels/diff/.githug/info/exclude +6 -0
- data/levels/diff/.githug/logs/HEAD +1 -0
- data/levels/diff/.githug/logs/refs/heads/master +1 -0
- data/levels/diff/.githug/objects/1b/6582364621c92707b587409cedbc4f77fc0cee +0 -0
- data/levels/diff/.githug/objects/4f/703ca9bd25781b6758eeb3c42ed5348610ba6d +2 -0
- data/levels/diff/.githug/objects/dc/aa55e97af34402e84d5336da37abcccc23cba6 +3 -0
- data/levels/diff/.githug/refs/heads/master +1 -0
- data/levels/diff/app.rb +42 -0
- data/levels/diff.rb +16 -0
- data/levels/fetch.rb +71 -0
- data/levels/find_old_branch/.githug/COMMIT_EDITMSG +1 -0
- data/levels/find_old_branch/.githug/HEAD +1 -0
- data/levels/find_old_branch/.githug/ORIG_HEAD +1 -0
- data/levels/find_old_branch/.githug/config +6 -0
- data/levels/find_old_branch/.githug/description +1 -0
- data/levels/find_old_branch/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/find_old_branch/.githug/hooks/commit-msg.sample +24 -0
- data/levels/find_old_branch/.githug/hooks/post-commit.sample +8 -0
- data/levels/find_old_branch/.githug/hooks/post-receive.sample +15 -0
- data/levels/find_old_branch/.githug/hooks/post-update.sample +8 -0
- data/levels/find_old_branch/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/find_old_branch/.githug/hooks/pre-commit.sample +50 -0
- data/levels/find_old_branch/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/find_old_branch/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/find_old_branch/.githug/hooks/update.sample +128 -0
- data/levels/find_old_branch/.githug/index +0 -0
- data/levels/find_old_branch/.githug/info/exclude +7 -0
- data/levels/find_old_branch/.githug/logs/HEAD +7 -0
- data/levels/find_old_branch/.githug/logs/refs/heads/blowup_sun_for_ransom +1 -0
- data/levels/find_old_branch/.githug/logs/refs/heads/cure_common_cold +2 -0
- data/levels/find_old_branch/.githug/logs/refs/heads/kill_the_batman +4 -0
- data/levels/find_old_branch/.githug/logs/refs/heads/solve_world_hunger +2 -0
- data/levels/find_old_branch/.githug/objects/05/e9c01bd3c9264761dd0cde477400a2c3104642 +0 -0
- data/levels/find_old_branch/.githug/objects/1f/0a136ddd98f61934d15eb00444df32d8e8254b +0 -0
- data/levels/find_old_branch/.githug/objects/32/4336a8401afc8ca384eaafe6615c84d552dd2c +0 -0
- data/levels/find_old_branch/.githug/objects/50/72aab6bd73accec89ad3aa077f43aab8a5e507 +0 -0
- data/levels/find_old_branch/.githug/objects/5d/130caf89f1a4bba6a1fffe72c484f3ab659e08 +0 -0
- data/levels/find_old_branch/.githug/objects/68/76e5b41fb693190df76b1baef6ef98623b4f1a +0 -0
- data/levels/find_old_branch/.githug/objects/6a/7702145d1eb91c9f79583eabb984027b12e60c +0 -0
- data/levels/find_old_branch/.githug/objects/89/4a16d6f1a48224e9006b4a6f0fe3846da19bec +0 -0
- data/levels/find_old_branch/.githug/objects/b8/c67b45e5fe9e4b39ac7ade725673f7c90bdfc3 +0 -0
- data/levels/find_old_branch/.githug/objects/bf/76434bc7e7346c6fef5a98aee0f7cfc0788f34 +0 -0
- data/levels/find_old_branch/.githug/refs/heads/blowup_sun_for_ransom +1 -0
- data/levels/find_old_branch/.githug/refs/heads/cure_common_cold +1 -0
- data/levels/find_old_branch/.githug/refs/heads/kill_the_batman +1 -0
- data/levels/find_old_branch/.githug/refs/heads/solve_world_hunger +1 -0
- data/levels/find_old_branch/TODO +1 -0
- data/levels/find_old_branch/myfile.txt +1 -0
- data/levels/find_old_branch.rb +15 -0
- data/levels/grep/.githug/COMMIT_EDITMSG +1 -0
- data/levels/grep/.githug/HEAD +1 -0
- data/levels/grep/.githug/config +6 -0
- data/levels/grep/.githug/description +1 -0
- data/levels/grep/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/grep/.githug/hooks/commit-msg.sample +24 -0
- data/levels/grep/.githug/hooks/post-commit.sample +8 -0
- data/levels/grep/.githug/hooks/post-receive.sample +15 -0
- data/levels/grep/.githug/hooks/post-update.sample +8 -0
- data/levels/grep/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/grep/.githug/hooks/pre-commit.sample +46 -0
- data/levels/grep/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/grep/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/grep/.githug/hooks/update.sample +128 -0
- data/levels/grep/.githug/index +0 -0
- data/levels/grep/.githug/info/exclude +6 -0
- data/levels/grep/.githug/logs/HEAD +1 -0
- data/levels/grep/.githug/logs/refs/heads/master +1 -0
- data/levels/grep/.githug/objects/12/c702f8b25b6b528cf904670b854dba3eba0f45 +3 -0
- data/levels/grep/.githug/objects/6f/45753f4a16b69f5b2215f2dbe8245f073353cc +1 -0
- data/levels/grep/.githug/objects/a4/1fe0c342be5c9930328cbb4315acebbd9c94b2 +0 -0
- data/levels/grep/.githug/objects/d3/f53e82aa015d1eea3b06c3b62dfbacee83bbe1 +0 -0
- data/levels/grep/.githug/refs/heads/master +1 -0
- data/levels/grep/app.rb +45 -0
- data/levels/grep/config.rb +17 -0
- data/levels/grep.rb +14 -0
- data/levels/ignore.rb +42 -0
- data/levels/include.rb +21 -0
- data/levels/init.rb +10 -0
- data/levels/log.rb +22 -0
- data/levels/merge/.githug/COMMIT_EDITMSG +1 -0
- data/levels/merge/.githug/HEAD +1 -0
- data/levels/merge/.githug/config +6 -0
- data/levels/merge/.githug/description +1 -0
- data/levels/merge/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/merge/.githug/hooks/commit-msg.sample +24 -0
- data/levels/merge/.githug/hooks/post-commit.sample +8 -0
- data/levels/merge/.githug/hooks/post-receive.sample +15 -0
- data/levels/merge/.githug/hooks/post-update.sample +8 -0
- data/levels/merge/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/merge/.githug/hooks/pre-commit.sample +46 -0
- data/levels/merge/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/merge/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/merge/.githug/hooks/update.sample +128 -0
- data/levels/merge/.githug/index +0 -0
- data/levels/merge/.githug/info/exclude +6 -0
- data/levels/merge/.githug/logs/HEAD +4 -0
- data/levels/merge/.githug/logs/refs/heads/feature +2 -0
- data/levels/merge/.githug/logs/refs/heads/master +1 -0
- data/levels/merge/.githug/objects/ad/24149d789e59d4b5f9ce41cda90110ca0f98b7 +0 -0
- data/levels/merge/.githug/objects/ae/fde3a01f6e10d72fd4899ce14c8b2654d3eb45 +0 -0
- data/levels/merge/.githug/objects/cc/8ea5a233df119d025eb240b9470e1ca76a151c +0 -0
- data/levels/merge/.githug/objects/e1/2277fe88657a072f1c4eb7d9320e4e6a74ba95 +0 -0
- data/levels/merge/.githug/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
- data/levels/merge/.githug/refs/heads/feature +1 -0
- data/levels/merge/.githug/refs/heads/master +1 -0
- data/levels/merge/file1 +0 -0
- data/levels/merge.rb +16 -0
- data/levels/merge_squash.rb +49 -0
- data/levels/number_of_files_committed.rb +51 -0
- data/levels/pull.rb +16 -0
- data/levels/pull_rebase.rb +49 -0
- data/levels/push.rb +67 -0
- data/levels/push_branch.rb +88 -0
- data/levels/push_tags.rb +63 -0
- data/levels/rebase/.githug/COMMIT_EDITMSG +1 -0
- data/levels/rebase/.githug/HEAD +1 -0
- data/levels/rebase/.githug/ORIG_HEAD +1 -0
- data/levels/rebase/.githug/config +7 -0
- data/levels/rebase/.githug/index +0 -0
- data/levels/rebase/.githug/logs/HEAD +13 -0
- data/levels/rebase/.githug/logs/refs/heads/feature +4 -0
- data/levels/rebase/.githug/logs/refs/heads/master +2 -0
- data/levels/rebase/.githug/objects/0c/d212c5b28da2e65ed4900712dd36c8adce48ad +0 -0
- data/levels/rebase/.githug/objects/44/19b972c0cd1b346ac90332aa7c5cc949589f78 +0 -0
- data/levels/rebase/.githug/objects/54/3b9bebdc6bd5c4b22136034a95dd097a57d3dd +0 -0
- data/levels/rebase/.githug/objects/81/78c76d627cade75005b40711b92f4177bc6cfc +0 -0
- data/levels/rebase/.githug/objects/98/205e9faf10cf33d2ef7c0f66e402540c62613a +2 -0
- data/levels/rebase/.githug/objects/a7/8bcab6232e9382a86436cdfcb2ed0391b1f0ac +4 -0
- data/levels/rebase/.githug/objects/b7/7313d7be366609dd2e77aa96d7fd73f4e27853 +0 -0
- data/levels/rebase/.githug/objects/b9/2d5d55d379cfb90b750e6472fc983f32ad9a71 +0 -0
- data/levels/rebase/.githug/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
- data/levels/rebase/.githug/objects/ed/0fdcf366b21b8984fb37ea34106978a2e5c5ba +0 -0
- data/levels/rebase/.githug/refs/heads/feature +1 -0
- data/levels/rebase/.githug/refs/heads/master +1 -0
- data/levels/rebase/README +1 -0
- data/levels/rebase.rb +16 -0
- data/levels/rebase_conflict.rb +55 -0
- data/levels/rebase_onto.rb +45 -0
- data/levels/remote.rb +16 -0
- data/levels/remote_add.rb +16 -0
- data/levels/remote_url.rb +17 -0
- data/levels/rename.rb +18 -0
- data/levels/rename_commit.rb +25 -0
- data/levels/reorder.rb +30 -0
- data/levels/repack.rb +19 -0
- data/levels/reset.rb +22 -0
- data/levels/reset_soft.rb +22 -0
- data/levels/restore.rb +28 -0
- data/levels/restructure.rb +40 -0
- data/levels/revert.rb +30 -0
- data/levels/rm.rb +20 -0
- data/levels/rm_cached.rb +18 -0
- data/levels/squash.rb +29 -0
- data/levels/stage_lines.rb +29 -0
- data/levels/stash/.githug/COMMIT_EDITMSG +1 -0
- data/levels/stash/.githug/HEAD +1 -0
- data/levels/stash/.githug/config +7 -0
- data/levels/stash/.githug/description +1 -0
- data/levels/stash/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/stash/.githug/hooks/commit-msg.sample +24 -0
- data/levels/stash/.githug/hooks/post-update.sample +8 -0
- data/levels/stash/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/stash/.githug/hooks/pre-commit.sample +50 -0
- data/levels/stash/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/stash/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/stash/.githug/hooks/update.sample +128 -0
- data/levels/stash/.githug/index +0 -0
- data/levels/stash/.githug/info/exclude +6 -0
- data/levels/stash/.githug/logs/HEAD +1 -0
- data/levels/stash/.githug/logs/refs/heads/master +1 -0
- data/levels/stash/.githug/objects/02/060592b31c9e12ffe1b282addf9537c5ef8e1f +0 -0
- data/levels/stash/.githug/objects/4b/825dc642cb6eb9a060e54bf8d69288fbee4904 +0 -0
- data/levels/stash/.githug/objects/7f/82d7e4fba66980af16da540e18d8955518cdc2 +0 -0
- data/levels/stash/.githug/objects/85/e560abcd7e3255dcd91982476e432f4d3d1b51 +0 -0
- data/levels/stash/.githug/refs/heads/master +1 -0
- data/levels/stash/lyrics.txt +13 -0
- data/levels/stash.rb +17 -0
- data/levels/status.rb +26 -0
- data/levels/submodule.rb +20 -0
- data/levels/tag.rb +18 -0
- data/levels/unstash/.githug/COMMIT_EDITMSG +1 -0
- data/levels/unstash/.githug/HEAD +1 -0
- data/levels/unstash/.githug/config +7 -0
- data/levels/unstash/.githug/description +1 -0
- data/levels/unstash/.githug/hooks/applypatch-msg.sample +15 -0
- data/levels/unstash/.githug/hooks/commit-msg.sample +24 -0
- data/levels/unstash/.githug/hooks/post-update.sample +8 -0
- data/levels/unstash/.githug/hooks/pre-applypatch.sample +14 -0
- data/levels/unstash/.githug/hooks/pre-commit.sample +50 -0
- data/levels/unstash/.githug/hooks/pre-rebase.sample +169 -0
- data/levels/unstash/.githug/hooks/prepare-commit-msg.sample +36 -0
- data/levels/unstash/.githug/hooks/update.sample +128 -0
- data/levels/unstash/.githug/index +0 -0
- data/levels/unstash/.githug/info/exclude +6 -0
- data/levels/unstash/.githug/logs/HEAD +1 -0
- data/levels/unstash/.githug/logs/refs/heads/master +1 -0
- data/levels/unstash/.githug/objects/02/060592b31c9e12ffe1b282addf9537c5ef8e1f +0 -0
- data/levels/unstash/.githug/objects/4b/825dc642cb6eb9a060e54bf8d69288fbee4904 +0 -0
- data/levels/unstash/.githug/objects/7f/82d7e4fba66980af16da540e18d8955518cdc2 +0 -0
- data/levels/unstash/.githug/objects/85/e560abcd7e3255dcd91982476e432f4d3d1b51 +0 -0
- data/levels/unstash/.githug/refs/heads/master +1 -0
- data/levels/unstash/lyrics.txt +13 -0
- data/levels/unstash.rb +22 -0
- data/lib/githug/cli.rb +121 -0
- data/lib/githug/extensions/grit/ruby1.9.rb +21 -0
- data/lib/githug/game.rb +57 -0
- data/lib/githug/level.rb +135 -0
- data/lib/githug/profile.rb +80 -0
- data/lib/githug/repository.rb +48 -0
- data/lib/githug/ui.rb +59 -0
- data/lib/githug/version.rb +3 -0
- data/lib/githug.rb +16 -0
- data/mygithug.gemspec +27 -0
- data/spec/githug/cli_spec.rb +133 -0
- data/spec/githug/game_spec.rb +96 -0
- data/spec/githug/level_spec.rb +159 -0
- data/spec/githug/profile_spec.rb +89 -0
- data/spec/githug/repository_spec.rb +97 -0
- data/spec/githug/ui_spec.rb +112 -0
- data/spec/githug_spec.rb +316 -0
- data/spec/spec_helper.rb +1 -0
- data/spec/support/files/test_level.rb +16 -0
- metadata +549 -0
data/spec/githug_spec.rb
ADDED
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
RSpec::Matchers.define :be_solved do
|
|
4
|
+
match do |actual|
|
|
5
|
+
!actual.match("Congratulations, you have solved the level!").nil?
|
|
6
|
+
end
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def skip_level
|
|
10
|
+
Githug::Profile.load.level_bump
|
|
11
|
+
`githug reset`
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
describe "The Game" do
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
before(:all) do
|
|
19
|
+
@dir = Dir.pwd
|
|
20
|
+
`rake build`
|
|
21
|
+
`gem install pkg/githug-#{Githug::VERSION}.gem`
|
|
22
|
+
FileUtils.rm_rf("/tmp/git_hug")
|
|
23
|
+
Dir.chdir("/tmp")
|
|
24
|
+
`echo "y" | githug`
|
|
25
|
+
Dir.chdir("/tmp/git_hug")
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
after(:all) do
|
|
29
|
+
Dir.chdir(@dir)
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
it "solves the init level" do
|
|
33
|
+
`git init`
|
|
34
|
+
`githug`.should be_solved
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
it "solves the config level" do
|
|
38
|
+
skip_level #The CI server does not have git config set
|
|
39
|
+
#full_name = `git config --get user.name`.chomp
|
|
40
|
+
#email = `git config --get user.email`.chomp
|
|
41
|
+
#f = IO::popen('githug', 'w')
|
|
42
|
+
#f.puts(full_name)
|
|
43
|
+
#f.puts(email)
|
|
44
|
+
#f.close
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
it "solves the add level" do
|
|
48
|
+
`git add README`
|
|
49
|
+
`githug`.should be_solved
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
it "solves the commit level" do
|
|
53
|
+
`git commit -m "test message"`
|
|
54
|
+
`githug`.should be_solved
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
it "solves the clone level" do
|
|
58
|
+
`git clone https://github.com/Gazler/cloneme`
|
|
59
|
+
`githug`.should be_solved
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
it "solves the clone_to_folder level" do
|
|
63
|
+
`git clone https://github.com/Gazler/cloneme my_cloned_repo`
|
|
64
|
+
`githug`.should be_solved
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
it "solves the ignore level" do
|
|
68
|
+
`echo "*.swp" >> .gitignore`
|
|
69
|
+
`githug`.should be_solved
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
it "solves the include level" do
|
|
73
|
+
`echo "*.a\n!lib.a" >> .gitignore`
|
|
74
|
+
`githug`.should be_solved
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
it "solves the status level" do
|
|
78
|
+
`git ls-files --other --exclude-standard | githug`.should be_solved
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
it "solves the number of files committed level" do
|
|
82
|
+
`git diff --name-only --cached | wc -l | githug`.should be_solved
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
it "solves the rm level" do
|
|
86
|
+
file_name = `git status | grep deleted | cut -d " " -f 5`
|
|
87
|
+
`git rm #{file_name}`
|
|
88
|
+
`githug`.should be_solved
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
it "solves the rm cached level" do
|
|
92
|
+
file_name = `git status | grep "new file" | cut -d " " -f 5`
|
|
93
|
+
`git rm --cached #{file_name}`
|
|
94
|
+
`githug`.should be_solved
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
it "solves the stash level" do
|
|
98
|
+
`git stash save`
|
|
99
|
+
`githug`.should be_solved
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
it "solves the rename level" do
|
|
103
|
+
`git mv oldfile.txt newfile.txt`
|
|
104
|
+
`githug`.should be_solved
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
it "solves the restructure level" do
|
|
108
|
+
`mkdir src`
|
|
109
|
+
`git mv *.html src`
|
|
110
|
+
`githug`.should be_solved
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
it "solves the log level" do
|
|
114
|
+
`git log --pretty=short | grep commit | cut -c 8-14 | githug`.should be_solved
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
it "solves the tag level" do
|
|
118
|
+
`git tag new_tag`
|
|
119
|
+
`githug`.should be_solved
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
it "solves the push_tags level" do
|
|
123
|
+
`git push origin master --tags`
|
|
124
|
+
`githug`.should be_solved
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
it "solves the commit_amend level" do
|
|
128
|
+
`git add forgotten_file.rb`
|
|
129
|
+
`git commit --amend -C HEAD`
|
|
130
|
+
`githug`.should be_solved
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
it "solves the commit_in_future level" do
|
|
134
|
+
authored_date = Time.now + 14
|
|
135
|
+
authored_date = authored_date.rfc2822
|
|
136
|
+
|
|
137
|
+
`git commit -m "Test of future date" --date="#{authored_date}"`
|
|
138
|
+
`githug`.should be_solved
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
it "solves the reset level" do
|
|
142
|
+
`git reset HEAD to_commit_second.rb`
|
|
143
|
+
`githug`.should be_solved
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
it "solves the reset_soft level" do
|
|
147
|
+
`git reset --soft HEAD^`
|
|
148
|
+
`githug`.should be_solved
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
it "solves the checkout_file level" do
|
|
152
|
+
`git checkout -- config.rb`
|
|
153
|
+
`githug`.should be_solved
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
it "solves the remove level" do
|
|
157
|
+
`git remote | githug`.should be_solved
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
it "solves the remote_url level" do
|
|
161
|
+
`git remote -v | tail -2 | head -1 | cut -c 17-52 | githug`.should be_solved
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
it "solves the pull level" do
|
|
165
|
+
`git pull origin master`
|
|
166
|
+
`githug`.should be_solved
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
it "solves the remote_add level" do
|
|
170
|
+
`git remote add origin https://github.com/githug/githug`
|
|
171
|
+
`githug`.should be_solved
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
it "solves the push level" do
|
|
175
|
+
`git rebase origin/master`
|
|
176
|
+
`git push origin`
|
|
177
|
+
`githug`.should be_solved
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
it "solves the diff level" do
|
|
181
|
+
`echo "26" | githug`.should be_solved
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
it "solves the blame level" do
|
|
185
|
+
`echo "spider man" | githug`.should be_solved
|
|
186
|
+
end
|
|
187
|
+
|
|
188
|
+
it "solves the branch level" do
|
|
189
|
+
`git branch test_code`
|
|
190
|
+
`githug`.should be_solved
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
it "solves the checkout level" do
|
|
194
|
+
`git checkout -b my_branch`
|
|
195
|
+
`githug`.should be_solved
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
it "solves the checkout_tag level" do
|
|
199
|
+
`git checkout v1.2`
|
|
200
|
+
`githug`.should be_solved
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
it "solves the checkout_tag_over_branch level" do
|
|
204
|
+
`git checkout tags/v1.2`
|
|
205
|
+
`githug`.should be_solved
|
|
206
|
+
end
|
|
207
|
+
|
|
208
|
+
it "solves the branch_at level" do
|
|
209
|
+
commit = `git log HEAD~1 --pretty=short | head -1 | cut -d " " -f 2`
|
|
210
|
+
`git branch test_branch #{commit}`
|
|
211
|
+
`githug`.should be_solved
|
|
212
|
+
end
|
|
213
|
+
|
|
214
|
+
it "solves the delete_branch level" do
|
|
215
|
+
`git branch -d delete_me`
|
|
216
|
+
`githug`.should be_solved
|
|
217
|
+
end
|
|
218
|
+
|
|
219
|
+
it "solves the push_branch level" do
|
|
220
|
+
`git push origin test_branch`
|
|
221
|
+
`githug`.should be_solved
|
|
222
|
+
end
|
|
223
|
+
|
|
224
|
+
it "should commit the merge level" do
|
|
225
|
+
`git merge feature`
|
|
226
|
+
`githug`.should be_solved
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
it "solves the fetch level" do
|
|
230
|
+
`git fetch`
|
|
231
|
+
`githug`.should be_solved
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
it "solves the rebase level" do
|
|
235
|
+
`git checkout feature`
|
|
236
|
+
`git rebase master`
|
|
237
|
+
`githug`.should be_solved
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
it "solves the rebase_onto level" do
|
|
241
|
+
`git checkout readme-update`
|
|
242
|
+
`git rebase --onto master wrong_branch readme-update`
|
|
243
|
+
`githug`.should be_solved
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
it "solves the repack level" do
|
|
247
|
+
`git repack -d`
|
|
248
|
+
`githug`.should be_solved
|
|
249
|
+
end
|
|
250
|
+
|
|
251
|
+
it "solves the cherry-pick level" do
|
|
252
|
+
commit = `git log new-feature --oneline -n 3 | tail -1 | cut -d " " -f 1`
|
|
253
|
+
`git cherry-pick #{commit}`
|
|
254
|
+
`githug`.should be_solved
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
it "solves the grep level" do
|
|
258
|
+
`echo "4" | githug`.should be_solved
|
|
259
|
+
end
|
|
260
|
+
|
|
261
|
+
it "solves the rename_commit level" do
|
|
262
|
+
skip_level
|
|
263
|
+
end
|
|
264
|
+
|
|
265
|
+
it "solves the squash level" do
|
|
266
|
+
skip_level
|
|
267
|
+
end
|
|
268
|
+
|
|
269
|
+
it "solves the merge squash level" do
|
|
270
|
+
`git merge --squash long-feature-branch`
|
|
271
|
+
`git commit -m "Merged Long Feature Branch"`
|
|
272
|
+
`githug`.should be_solved
|
|
273
|
+
end
|
|
274
|
+
|
|
275
|
+
it "solves the reorder level" do
|
|
276
|
+
skip_level
|
|
277
|
+
end
|
|
278
|
+
|
|
279
|
+
it "solves the bisect level" do
|
|
280
|
+
`echo "18ed2ac" | githug`.should be_solved
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
it "solves the stage_lines level" do
|
|
284
|
+
skip_level
|
|
285
|
+
end
|
|
286
|
+
|
|
287
|
+
it "solves the find_old_branch level" do
|
|
288
|
+
`git checkout solve_world_hunger`
|
|
289
|
+
`githug`.should be_solved
|
|
290
|
+
end
|
|
291
|
+
|
|
292
|
+
it "solves the revert level" do
|
|
293
|
+
sleep 1
|
|
294
|
+
`git revert HEAD~1 --no-edit`
|
|
295
|
+
`githug`.should be_solved
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
it "solves the restore level" do
|
|
299
|
+
`git reflog | grep "Restore this commit" | awk '{print $1}' | xargs git checkout`
|
|
300
|
+
`githug`.should be_solved
|
|
301
|
+
end
|
|
302
|
+
|
|
303
|
+
it "solves the conflict level" do
|
|
304
|
+
skip_level
|
|
305
|
+
end
|
|
306
|
+
|
|
307
|
+
it "solves the submodule level" do
|
|
308
|
+
`git submodule add https://github.com/jackmaney/githug-include-me`
|
|
309
|
+
`githug`.should be_solved
|
|
310
|
+
end
|
|
311
|
+
|
|
312
|
+
it "solves the contribute level" do
|
|
313
|
+
skip_level
|
|
314
|
+
end
|
|
315
|
+
|
|
316
|
+
end
|
data/spec/spec_helper.rb
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require './lib/githug.rb'
|