Sha256: dfddc46ecc3f39176d39161298600925f4ade6a885bf2b69b1df742bd13d557f

Contents?: true

Size: 798 Bytes

Versions: 6

Compression:

Stored size: 798 Bytes

Contents

difficulty 4
description "You have committed several times but want to undo the middle commit.
All commits have been pushed, so you can't change existing history."

setup do
  repo.init

  FileUtils.touch "file1"
  repo.add        "file1"
  repo.commit_all "First commit"

  FileUtils.touch "file3"
  repo.add        "file3"
  repo.commit_all "Bad commit"

  FileUtils.touch "file2"
  repo.add        "file2"
  repo.commit_all "Second commit"
end

solution do
  valid = false
  valid = true if repo.commits.length > 3 &&
    repo.commits[3].message == "First commit" &&
    repo.commits[2].message == "Second commit" &&
    repo.commits[1].message == "Bad commit" &&
    repo.commits[0].message.split("\n").first == "Revert \"Bad commit\""
  valid
end

hint do
  puts "Try the revert command."
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
githug-0.4.4 levels/revert.rb
githug-0.4.3 levels/revert.rb
githug-0.4.2 levels/revert.rb
githug-0.4.1 levels/revert.rb
githug-0.4.0 levels/revert.rb
githug-0.3.5 levels/revert.rb