SuccessConsole Output

Skipping 494 KB.. Full Log
Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase a nonexistant branch': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to graft a branch onto another branch             # Rebase.feature:34
    Given I have a repository                                     # DefaultStepDefinitions.I_have_a_repository()
    And I have several branches                                   # DefaultStepDefinitions.I_have_several_branches()
    When I run the command "rebase branch1 branch2 --onto master" # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "log"                                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Commit1"                    # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Commit2"                 # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should not contain "Commit3"                 # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain "Commit4"                     # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Commit5"                     # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase to a nonexistant upstream': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase a nonexistant branch                          # Rebase.feature:45
    Given I have a repository                                           # DefaultStepDefinitions.I_have_a_repository()
    And I have several branches                                         # DefaultStepDefinitions.I_have_several_branches()
    When I run the command "rebase master nonexistant"                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "The branch reference could not be resolved." # DefaultStepDefinitions.it_should_answer_exactly(String)
    And it should exit with non-zero exit code                          # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to graft a branch onto a nonexistant branch': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase to a nonexistant upstream                       # Rebase.feature:52
    Given I have a repository                                             # DefaultStepDefinitions.I_have_a_repository()
    And I have several branches                                           # DefaultStepDefinitions.I_have_several_branches()
    When I run the command "rebase nonexistant branch1"                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "The upstream reference could not be resolved." # DefaultStepDefinitions.it_should_answer_exactly(String)
    And it should exit with non-zero exit code                            # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase from an empty directory': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to graft a branch onto a nonexistant branch           # Rebase.feature:59
    Given I have a repository                                         # DefaultStepDefinitions.I_have_a_repository()
    And I have several branches                                       # DefaultStepDefinitions.I_have_several_branches()
    When I run the command "rebase master branch1 --onto nonexistant" # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "The onto reference could not be resolved." # DefaultStepDefinitions.it_should_answer_exactly(String)
    And it should exit with non-zero exit code                        # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase with conflicts and skip': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase from an empty directory                    # Rebase.feature:66
    Given I am in an empty directory                                 # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "rebase master branch1"                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should start with "Not in a geogig repository" # DefaultStepDefinitions.the_response_should_start_with(String)
    And it should exit with non-zero exit code                       # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()

0.0error: could not apply 43083d24 Commit2CONFLICT: conflict in Points/Points.1When you have fixed this conflicts, run 'geogig rebase --continue' to continue rebasing.If you would prefer to skip this commit, instead run 'geogig rebase --skip.To check out the original branch and stop rebasing, run 'geogig rebase --abort'
Commit:  2b952d98c305e5cc24d398c21716e9af059fac9fAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:27 -0500Subject: Commit3Commit:  968dd8edf8a47512e4ffbe25f8000c2bd4f7f0c2Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:28 -0500Subject: Commit4Commit:  891957bdf84dd2209be5985d2936e3ca1a2500fbAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:26 -0500Subject: Commit1
Commit:  2b952d98c305e5cc24d398c21716e9af059fac9fAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:27 -0500Subject: Commit3Commit:  968dd8edf8a47512e4ffbe25f8000c2bd4f7f0c2Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:28 -0500Subject: Commit4Commit:  891957bdf84dd2209be5985d2936e3ca1a2500fbAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:26 -0500Subject: Commit1
Commit:  2b952d98c305e5cc24d398c21716e9af059fac9fAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:27 -0500Subject: Commit3Commit:  968dd8edf8a47512e4ffbe25f8000c2bd4f7f0c2Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:28 -0500Subject: Commit4Commit:  891957bdf84dd2209be5985d2936e3ca1a2500fbAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:26 -0500Subject: Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase with conflicts and continue': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase with conflicts and skip                            # Rebase.feature:72
    Given I have a repository                                                # DefaultStepDefinitions.I_have_a_repository()
    And I have conflicting branches                                          # DefaultStepDefinitions.I_have_conflicting_branches()
    When I run the command "rebase branch1 master"                           # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "CONFLICT"                              # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                               # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
    When I run the command "rebase --skip"                                   # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "log"                                              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Commit1"                               # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Commit2"                            # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain "Commit3"                                # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Commit4"                                # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|branch1}" # DefaultStepDefinitions.checkResponseTextContains(String)
Commit:  20d261070f24f7c89b99511004efd0051493746bAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:31 -0500Subject: Commit3Commit:  5426e04871cdd1583a68d68cf0c61e3a895a304cAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:31 -0500Subject: Commit2Commit:  6dac23743dd510afe09f1f4851add14d3f94c884Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:32 -0500Subject: Commit4Commit:  369b6fa4730fc610756acd86898d3a6aaab88b03Author:  John Doe <JohnDoe@example.com>Date:    (3 seconds ago) 2018-12-26 12:04:30 -0500Subject: Commit1
Commit:  20d261070f24f7c89b99511004efd0051493746bAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:31 -0500Subject: Commit3Commit:  5426e04871cdd1583a68d68cf0c61e3a895a304cAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:31 -0500Subject: Commit2Commit:  6dac23743dd510afe09f1f4851add14d3f94c884Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:32 -0500Subject: Commit4Commit:  369b6fa4730fc610756acd86898d3a6aaab88b03Author:  John Doe <JohnDoe@example.com>Date:    (3 seconds ago) 2018-12-26 12:04:30 -0500Subject: Commit1
Commit:  20d261070f24f7c89b99511004efd0051493746bAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:31 -0500Subject: Commit3Commit:  5426e04871cdd1583a68d68cf0c61e3a895a304cAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:31 -0500Subject: Commit2Commit:  6dac23743dd510afe09f1f4851add14d3f94c884Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:32 -0500Subject: Commit4Commit:  369b6fa4730fc610756acd86898d3a6aaab88b03Author:  John Doe <JohnDoe@example.com>Date:    (3 seconds ago) 2018-12-26 12:04:30 -0500Subject: Commit1
Commit:  20d261070f24f7c89b99511004efd0051493746bAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:31 -0500Subject: Commit3Commit:  5426e04871cdd1583a68d68cf0c61e3a895a304cAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:04:31 -0500Subject: Commit2Commit:  6dac23743dd510afe09f1f4851add14d3f94c884Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:04:32 -0500Subject: Commit4Commit:  369b6fa4730fc610756acd86898d3a6aaab88b03Author:  John Doe <JohnDoe@example.com>Date:    (3 seconds ago) 2018-12-26 12:04:30 -0500Subject: Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase with conflicts and abort': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase with conflicts and continue                         # Rebase.feature:86
    Given I have a repository                                                 # DefaultStepDefinitions.I_have_a_repository()
    And I have conflicting branches                                           # DefaultStepDefinitions.I_have_conflicting_branches()
    And I run the command "rebase branch1 master"                             # DefaultStepDefinitions.I_run_the_command_X(String)
    And I have unstaged "points1"                                             # DefaultStepDefinitions.I_have_unstaged(String)
    And I run the command "add"                                               # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "rebase --continue"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "log"                                               # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Commit1"                                # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Commit2"                                 # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Commit3"                                 # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Commit4"                                 # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|branch1}"  # DefaultStepDefinitions.checkResponseTextContains(String)
    And the response should contain variable "{@ObjectId|localrepo|master~3}" # DefaultStepDefinitions.checkResponseTextContains(String)

0.0Building final tree PointsTree Points staged in 795.9 μsRemoving 0 merged conflicts...Done. 1 unmerged conflicts.error: could not apply 65c9ffd4 Commit4CONFLICT: conflict in Points/Points.1When you have fixed this conflicts, run 'geogig rebase --continue' to continue rebasing.If you would prefer to skip this commit, instead run 'geogig rebase --skip.To check out the original branch and stop rebasing, run 'geogig rebase --abort'
Rebase aborted successfully.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase --skip when no conflict exist': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase with conflicts and abort          # Rebase.feature:101
    Given I have a repository                               # DefaultStepDefinitions.I_have_a_repository()
    And I have conflicting branches                         # DefaultStepDefinitions.I_have_conflicting_branches()
    When I run the command "rebase master branch1"          # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "CONFLICT"             # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code              # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
    When I run the command "rebase --abort"                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "aborted successfully" # DefaultStepDefinitions.the_response_should_contain(String)
Cannot skip. You are not in the middle of a rebase process.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase --continue when no conflict exist': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase --skip when no conflict exist # Rebase.feature:110
    Given I have a repository                           # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "rebase --skip"              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Cannot skip"      # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code          # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Cannot continue. You are not in the middle of a rebase process.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase --abort when no conflict exist': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase --continue when no conflict exist # Rebase.feature:116
    Given I have a repository                               # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "rebase --continue"              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Cannot continue"      # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code              # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Cannot abort. You are not in the middle of a rebase process.

  Scenario: Try to rebase --abort when no conflict exist # Rebase.feature:122
    Given I have a repository                            # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "rebase --abort"              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Cannot abort"      # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code           # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Feature: "rm" command
    In order to remove features from the repository
    As a Geogig User
    I want to delete features and trees from the working tree
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to delete a single feature': Using URIBuilder DefaultTestRepoURIBuilder
Deleting features...Staging changes...Computing result count...Deleted 1 feature(s)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to delete several features': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to delete a single feature                  # Remove.feature:6
    Given I have a repository                               # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                             # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                             # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                              # DefaultStepDefinitions.I_have_staged(String)
    And I run the command "commit -m Test"                  # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "rm Points/Points.1"             # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Deleted 1 feature(s)" # DefaultStepDefinitions.the_response_should_contain(String)
Deleting features...Staging changes...Computing result count...Deleted 2 feature(s)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to delete a whole tree': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to delete several features                      # Remove.feature:15
    Given I have a repository                                   # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                 # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                 # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                  # DefaultStepDefinitions.I_have_staged(String)
    And I run the command "commit -m Test"                      # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "rm Points/Points.1 Points/Points.2" # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Deleted 2 feature(s)"     # DefaultStepDefinitions.the_response_should_contain(String)
Deleted Points treeStaging changes...Computing result count...Deleted 2 feature(s)Deleted 1 trees
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to delete a whole tree without the -r modifier': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to delete a whole tree                     # Remove.feature:24
    Given I have a repository                              # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                            # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                            # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                             # DefaultStepDefinitions.I_have_staged(String)
    And I run the command "commit -m Test"                 # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "rm Points -r "                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Deleted Points tree" # DefaultStepDefinitions.the_response_should_contain(String)
Cannot remove tree Points if recursive or truncate is not specified
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to delete an inexistent feature': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to delete a whole tree without the -r modifier                                             # Remove.feature:33
    Given I have a repository                                                                              # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                                            # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                                                            # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                                                             # DefaultStepDefinitions.I_have_staged(String)
    And I run the command "commit -m Test"                                                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "rm Points"                                                                     # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Cannot remove tree Points if recursive or truncate is not specified" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                                                             # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Deleting features...Staging changes...Computing result count...Deleted 0 feature(s)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Truncate a tree': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to delete an inexistent feature             # Remove.feature:43
    Given I have a repository                               # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                             # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                             # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                              # DefaultStepDefinitions.I_have_staged(String)
    And I run the command "commit -m Test"                  # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "rm Points/Wrong.1"              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Deleted 0 feature(s)" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code              # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Truncated Points treeStaging changes...Computing result count...Deleted 2 feature(s)
Points 0Lines 1

  Scenario: Truncate a tree                                  # Remove.feature:53
    Given I have a repository                                # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                              # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                              # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                               # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "rm Points -t "                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Truncated Points tree" # DefaultStepDefinitions.the_response_should_contain(String)
    When I run the command "ls-tree -s"                      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Points 0"              # DefaultStepDefinitions.the_response_should_contain(String)
Feature: "reset" command
    In order to undo local changes
    As a Geogig User
    I want to reset the head, and optionally, the working tree and index to the state of another commit
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a mixed reset of all local changes': Using URIBuilder DefaultTestRepoURIBuilder

100.0[821e6e870bbdc36f6eb8dbdae9d5960e2fcf5297] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
Unstaged changes after reset:M	Points/Points.1
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a hard reset of all local changes': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a mixed reset of all local changes             # Reset.feature:6
    Given I have a repository                                        # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                       # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"                          # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"              # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                                  # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --mixed"                            # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Unstaged changes after reset:" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 2 lines                          # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    When I run the command "status"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes not staged for commit" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Changes to be committed"    # DefaultStepDefinitions.the_response_should_not_contain(String)

100.0[27e8eaef3787921d8ef168d7e5db44ad5f4bf4de] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
# On branch masternothing to commit (working directory clean)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a soft reset of all local changes': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a hard reset of all local changes  # Reset.feature:21
    Given I have a repository                            # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                           # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"  # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                      # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --hard"                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer ""                             # DefaultStepDefinitions.it_should_answer_exactly(String)
    When I run the command "status"                      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "nothing to commit" # DefaultStepDefinitions.the_response_should_contain(String)

100.0[ef757cf3490d2ad347f52370e4dd7f6694d47d16] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      modified  Points#      modified  Points/Points.1# 2 total.#
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a mixed and hard reset of all local changes': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a soft reset of all local changes                  # Reset.feature:34
    Given I have a repository                                            # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                           # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"                              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"                  # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                                      # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --soft"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer ""                                             # DefaultStepDefinitions.it_should_answer_exactly(String)
    When I run the command "status"                                      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should not contain "Changes not staged for commit" # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain "Changes to be committed"            # DefaultStepDefinitions.the_response_should_contain(String)

100.0[04dd548b1b8149655a1df69eadfaf08e2949f8d8] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a mixed and soft reset of all local changes': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a mixed and hard reset of all local changes # Reset.feature:48
    Given I have a repository                                     # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                    # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"                       # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"           # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                               # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --hard --mixed"                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "you may only specify one mode."        # DefaultStepDefinitions.it_should_answer_exactly(String)

100.0[df41c543bc7a4b67ef0724fe5256a8fe44cd46e7] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to reset from an empty directory': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a mixed and soft reset of all local changes # Reset.feature:59
    Given I have a repository                                     # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                    # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"                       # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"           # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                               # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --soft --mixed"                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "you may only specify one mode."        # DefaultStepDefinitions.it_should_answer_exactly(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to reset with no commits': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to reset from an empty directory                     # Reset.feature:70
    Given I am in an empty directory                                 # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "reset"                                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should start with "Not in a geogig repository" # DefaultStepDefinitions.the_response_should_start_with(String)
    And it should exit with non-zero exit code                       # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to reset to a nonexistant commit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to reset with no commits                  # Reset.feature:76
    Given I have a repository                             # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "reset"                        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "Commit could not be resolved." # DefaultStepDefinitions.it_should_answer_exactly(String)
    And it should exit with non-zero exit code            # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()

100.0[20f06c21f146fce0066aa789863b967494b94143] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a reset of a specific path': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to reset to a nonexistant commit          # Reset.feature:82
    Given I have a repository                             # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                           # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                           # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                            # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"               # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"   # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                       # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset nonexistant"             # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "Commit could not be resolved." # DefaultStepDefinitions.it_should_answer_exactly(String)
    And it should exit with non-zero exit code            # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()

100.0[72197f579f4af2d0a96bf3799ad89e393c7f1fc7] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
Unstaged changes after reset:M	Points/Points.1
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a reset of a non-used path': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a reset of a specific path                     # Reset.feature:94
    Given I have a repository                                        # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                       # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"                          # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"              # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                                  # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --path Points"                      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Unstaged changes after reset:" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 2 lines                          # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    When I run the command "status"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes not staged for commit" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Changes to be committed"    # DefaultStepDefinitions.the_response_should_not_contain(String)

100.0[bd9e1344d056a2a9a1e4414683647ac04fbd42da] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      modified  Points#      modified  Points/Points.1# 2 total.#
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a reset of multiple paths': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a reset of a non-used path                         # Reset.feature:109
    Given I have a repository                                            # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                           # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"                              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"                  # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                                      # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --path Lines"                           # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer ""                                             # DefaultStepDefinitions.it_should_answer_exactly(String)
    When I run the command "status"                                      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should not contain "Changes not staged for commit" # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain "Changes to be committed"            # DefaultStepDefinitions.the_response_should_contain(String)

100.0[3194391fb7ee53f31fa2c7b60f2f44ddd20e1efa] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
Unstaged changes after reset:M	Points/Points.1
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to reset to the state of another branch': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a reset of multiple paths                      # Reset.feature:123
    Given I have a repository                                        # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                       # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"                          # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"              # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                                  # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --path Lines Points"                # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Unstaged changes after reset:" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 2 lines                          # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    When I run the command "status"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes not staged for commit" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Changes to be committed"    # DefaultStepDefinitions.the_response_should_not_contain(String)
Unstaged changes after reset:A	Lines/Lines.1
Commit:  7a6130b9f4a813180c55d3cb1c7be64b3dbb08fbAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:09 -0500Subject: Commit3Commit:  8579d7fd8f6e96e60f0f91b00bc517bea99b5fbbAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:08 -0500Subject: Commit2Commit:  8dbaa891d78c87fe93c42724155f27c0086a64c8Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:05:08 -0500Subject: Commit1
Commit:  7a6130b9f4a813180c55d3cb1c7be64b3dbb08fbAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:09 -0500Subject: Commit3Commit:  8579d7fd8f6e96e60f0f91b00bc517bea99b5fbbAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:08 -0500Subject: Commit2Commit:  8dbaa891d78c87fe93c42724155f27c0086a64c8Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:05:08 -0500Subject: Commit1
Commit:  7a6130b9f4a813180c55d3cb1c7be64b3dbb08fbAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:09 -0500Subject: Commit3Commit:  8579d7fd8f6e96e60f0f91b00bc517bea99b5fbbAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:08 -0500Subject: Commit2Commit:  8dbaa891d78c87fe93c42724155f27c0086a64c8Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:05:08 -0500Subject: Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a reset with a mode and paths': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to reset to the state of another branch                         # Reset.feature:138
    Given I have a repository                                                   # DefaultStepDefinitions.I_have_a_repository()
    And I have several branches                                                 # DefaultStepDefinitions.I_have_several_branches()
    When I run the command "checkout branch2"                                   # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "reset branch1"                                       # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Unstaged changes after reset:"            # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 2 lines                                     # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    When I run the command "log"                                                # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Subject: Commit1"                         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit2"                          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit3"                          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|branch1}"    # DefaultStepDefinitions.checkResponseTextContains(String)
    And the response should not contain "Subject: Commit4"                      # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should not contain "Subject: Commit5"                      # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should not contain variable "{@ObjectId|localrepo|master}" # DefaultStepDefinitions.checkResponseTextDoesNotContain(String)

100.0[97a0f973a3c8c046780b751a1649827d7220467c] TestCommitted, counting objects...3 features added, 0 changed, 0 deleted.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to do a reset with removed feature': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to do a reset with a mode and paths                              # Reset.feature:154
    Given I have a repository                                                    # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                  # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                                  # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                                   # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m Test"                                      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"                          # DefaultStepDefinitions.the_response_should_contain(String)
    When I modify and add a feature                                              # DefaultStepDefinitions.I_modify_and_add_a_feature()
    And I run the command "reset --hard --path Lines"                            # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "Ambiguous call, cannot specify paths and reset mode." # DefaultStepDefinitions.it_should_answer_exactly(String)
    And it should exit with non-zero exit code                                   # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Unstaged changes after reset:D	Points/Points.1

  Scenario: Try to do a reset with removed feature                  # Reset.feature:166
    Given I have a repository                                       # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                      # DefaultStepDefinitions.I_have_several_commits()
    And I remove and add a feature                                  # DefaultStepDefinitions.I_remove_and_add_a_feature()
    When I run the command "reset"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Unstaged changes after reset" # DefaultStepDefinitions.the_response_should_contain(String)
Feature: "revert" command
  In order to undo committed changes
  As a Geogig user
  I want to revert a series of commits and commit those changes
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert something while not in a geogig repository': Using URIBuilder DefaultTestRepoURIBuilder
Not in a geogig repository: /opt/public/hipp/ramdisk/geogig/junit2159925648860944996/data
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert with nothing specified for reverting': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to revert something while not in a geogig repository # Revert.feature:6
    Given I am in an empty directory                                 # DefaultStepDefinitions.I_am_in_an_empty_directory()
    And I run the command "revert master"                            # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Not in a geogig repository"    # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                       # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
nothing specified for reverting
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert one commit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to revert with nothing specified for reverting         # Revert.feature:12
    Given I have a repository                                          # DefaultStepDefinitions.I_have_a_repository()
    And I run the command "revert"                                     # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "nothing specified for reverting" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                         # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Creating revert state of commit 8a6e184d6587ecfdf511efbf4d9b9bc696108a35 (Commit4)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 1 features in 5.625 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 1 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 1 changes staged in 11.38 ms

Commit:  2243639fd4a9ffeff2c62dd51333843cceadab58Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:18 +0000Subject: Revert 'Commit4'This reverts 8a6e184d6587ecfdf511efbf4d9b9bc696108a35Commit:  8a6e184d6587ecfdf511efbf4d9b9bc696108a35Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit4Commit:  5d511bb0b6a8c4c803ad8f5825cc58f4cba473feAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit3Commit:  6596c8631392e43929fd5ac1c86770fb44a9bb7aAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit2Commit:  9656695f989fc228f4ed12c04070cb2fca38836bAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit1
Commit:  2243639fd4a9ffeff2c62dd51333843cceadab58Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:18 +0000Subject: Revert 'Commit4'This reverts 8a6e184d6587ecfdf511efbf4d9b9bc696108a35Commit:  8a6e184d6587ecfdf511efbf4d9b9bc696108a35Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit4Commit:  5d511bb0b6a8c4c803ad8f5825cc58f4cba473feAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit3Commit:  6596c8631392e43929fd5ac1c86770fb44a9bb7aAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit2Commit:  9656695f989fc228f4ed12c04070cb2fca38836bAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit1
Commit:  2243639fd4a9ffeff2c62dd51333843cceadab58Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:18 +0000Subject: Revert 'Commit4'This reverts 8a6e184d6587ecfdf511efbf4d9b9bc696108a35Commit:  8a6e184d6587ecfdf511efbf4d9b9bc696108a35Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit4Commit:  5d511bb0b6a8c4c803ad8f5825cc58f4cba473feAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit3Commit:  6596c8631392e43929fd5ac1c86770fb44a9bb7aAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit2Commit:  9656695f989fc228f4ed12c04070cb2fca38836bAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit1
Commit:  2243639fd4a9ffeff2c62dd51333843cceadab58Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:18 +0000Subject: Revert 'Commit4'This reverts 8a6e184d6587ecfdf511efbf4d9b9bc696108a35Commit:  8a6e184d6587ecfdf511efbf4d9b9bc696108a35Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit4Commit:  5d511bb0b6a8c4c803ad8f5825cc58f4cba473feAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit3Commit:  6596c8631392e43929fd5ac1c86770fb44a9bb7aAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit2Commit:  9656695f989fc228f4ed12c04070cb2fca38836bAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit1
Commit:  2243639fd4a9ffeff2c62dd51333843cceadab58Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:18 +0000Subject: Revert 'Commit4'This reverts 8a6e184d6587ecfdf511efbf4d9b9bc696108a35Commit:  8a6e184d6587ecfdf511efbf4d9b9bc696108a35Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit4Commit:  5d511bb0b6a8c4c803ad8f5825cc58f4cba473feAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:18 -0500Subject: Commit3Commit:  6596c8631392e43929fd5ac1c86770fb44a9bb7aAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit2Commit:  9656695f989fc228f4ed12c04070cb2fca38836bAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:17 -0500Subject: Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert a commit that doesn't exist': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to revert one commit                            # Revert.feature:18
    Given I have a repository                                   # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                  # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "revert master"                      # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "log"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Subject: Commit1"         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit2"          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit3"          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit4"          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Revert 'Commit4'" # DefaultStepDefinitions.the_response_should_contain(String)
Couldn't resolve 'doesntExist' to a commit, aborting revert.
Commit:  e4d3c01ad6b066c3829e335e40ab3b86fc2082c0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:21 -0500Subject: Commit4Commit:  c8096e27de11da6149a274bbb8e821ecef2601a5Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:21 -0500Subject: Commit3Commit:  2519186a917db114e595e4fde391c59e31964e87Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:20 -0500Subject: Commit2Commit:  0e2e2addc59d04aed1f0d5435d1fbad58e44b5acAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:19 -0500Subject: Commit1
Commit:  e4d3c01ad6b066c3829e335e40ab3b86fc2082c0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:21 -0500Subject: Commit4Commit:  c8096e27de11da6149a274bbb8e821ecef2601a5Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:21 -0500Subject: Commit3Commit:  2519186a917db114e595e4fde391c59e31964e87Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:20 -0500Subject: Commit2Commit:  0e2e2addc59d04aed1f0d5435d1fbad58e44b5acAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:19 -0500Subject: Commit1
Commit:  e4d3c01ad6b066c3829e335e40ab3b86fc2082c0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:21 -0500Subject: Commit4Commit:  c8096e27de11da6149a274bbb8e821ecef2601a5Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:21 -0500Subject: Commit3Commit:  2519186a917db114e595e4fde391c59e31964e87Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:20 -0500Subject: Commit2Commit:  0e2e2addc59d04aed1f0d5435d1fbad58e44b5acAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:19 -0500Subject: Commit1
Commit:  e4d3c01ad6b066c3829e335e40ab3b86fc2082c0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:21 -0500Subject: Commit4Commit:  c8096e27de11da6149a274bbb8e821ecef2601a5Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:21 -0500Subject: Commit3Commit:  2519186a917db114e595e4fde391c59e31964e87Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:20 -0500Subject: Commit2Commit:  0e2e2addc59d04aed1f0d5435d1fbad58e44b5acAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:19 -0500Subject: Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert multiple commits': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to revert a commit that doesn't exist                                              # Revert.feature:29
    Given I have a repository                                                                      # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                                                     # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "revert doesntExist"                                                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Couldn't resolve 'doesntExist' to a commit, aborting revert" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                                                     # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
    When I run the command "log"                                                                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Subject: Commit1"                                            # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit2"                                             # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit3"                                             # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit4"                                             # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Subject: Revert 'Commit4'"                                # DefaultStepDefinitions.the_response_should_not_contain(String)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Creating revert state of commit ee3feea17f0d5cbd34b3c940c159bc1700270194 (Commit3)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 2 features in 12.65 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 2 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 2 changes staged in 11.86 ms

[main] INFO org.locationtech.geogig.porcelain.RevertOp - Creating revert state of commit 67bf633855957d10f9b0576a8f3c2512ae6935e7 (Commit2)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 2 features in 12.61 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 2 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 2 changes staged in 26.47 ms

Commit:  fbd646cccd1ef005993c8604c21cf616868ac0b0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit2'This reverts 67bf633855957d10f9b0576a8f3c2512ae6935e7Commit:  11ea9d7216b858890792d81579df8d6f55e9b5d4Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit3'This reverts ee3feea17f0d5cbd34b3c940c159bc1700270194Commit:  6263df682bf82a5382d5b579a95224e6a25864aeAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:24 -0500Subject: Commit4Commit:  ee3feea17f0d5cbd34b3c940c159bc1700270194Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:23 -0500Subject: Commit3Commit:  67bf633855957d10f9b0576a8f3c2512ae6935e7Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:23 -0500Subject: Commit2Commit:  1d747efb17a449f598a42cc53b3fffe5cd855788Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:22 -0500Subject: Commit1
Commit:  fbd646cccd1ef005993c8604c21cf616868ac0b0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit2'This reverts 67bf633855957d10f9b0576a8f3c2512ae6935e7Commit:  11ea9d7216b858890792d81579df8d6f55e9b5d4Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit3'This reverts ee3feea17f0d5cbd34b3c940c159bc1700270194Commit:  6263df682bf82a5382d5b579a95224e6a25864aeAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:24 -0500Subject: Commit4Commit:  ee3feea17f0d5cbd34b3c940c159bc1700270194Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:23 -0500Subject: Commit3Commit:  67bf633855957d10f9b0576a8f3c2512ae6935e7Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:23 -0500Subject: Commit2Commit:  1d747efb17a449f598a42cc53b3fffe5cd855788Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:22 -0500Subject: Commit1
Commit:  fbd646cccd1ef005993c8604c21cf616868ac0b0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit2'This reverts 67bf633855957d10f9b0576a8f3c2512ae6935e7Commit:  11ea9d7216b858890792d81579df8d6f55e9b5d4Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit3'This reverts ee3feea17f0d5cbd34b3c940c159bc1700270194Commit:  6263df682bf82a5382d5b579a95224e6a25864aeAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:24 -0500Subject: Commit4Commit:  ee3feea17f0d5cbd34b3c940c159bc1700270194Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:23 -0500Subject: Commit3Commit:  67bf633855957d10f9b0576a8f3c2512ae6935e7Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:23 -0500Subject: Commit2Commit:  1d747efb17a449f598a42cc53b3fffe5cd855788Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:22 -0500Subject: Commit1
Commit:  fbd646cccd1ef005993c8604c21cf616868ac0b0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit2'This reverts 67bf633855957d10f9b0576a8f3c2512ae6935e7Commit:  11ea9d7216b858890792d81579df8d6f55e9b5d4Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit3'This reverts ee3feea17f0d5cbd34b3c940c159bc1700270194Commit:  6263df682bf82a5382d5b579a95224e6a25864aeAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:24 -0500Subject: Commit4Commit:  ee3feea17f0d5cbd34b3c940c159bc1700270194Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:23 -0500Subject: Commit3Commit:  67bf633855957d10f9b0576a8f3c2512ae6935e7Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:23 -0500Subject: Commit2Commit:  1d747efb17a449f598a42cc53b3fffe5cd855788Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:22 -0500Subject: Commit1
Commit:  fbd646cccd1ef005993c8604c21cf616868ac0b0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit2'This reverts 67bf633855957d10f9b0576a8f3c2512ae6935e7Commit:  11ea9d7216b858890792d81579df8d6f55e9b5d4Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit3'This reverts ee3feea17f0d5cbd34b3c940c159bc1700270194Commit:  6263df682bf82a5382d5b579a95224e6a25864aeAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:24 -0500Subject: Commit4Commit:  ee3feea17f0d5cbd34b3c940c159bc1700270194Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:23 -0500Subject: Commit3Commit:  67bf633855957d10f9b0576a8f3c2512ae6935e7Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:23 -0500Subject: Commit2Commit:  1d747efb17a449f598a42cc53b3fffe5cd855788Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:22 -0500Subject: Commit1
Commit:  fbd646cccd1ef005993c8604c21cf616868ac0b0Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit2'This reverts 67bf633855957d10f9b0576a8f3c2512ae6935e7Commit:  11ea9d7216b858890792d81579df8d6f55e9b5d4Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:24 +0000Subject: Revert 'Commit3'This reverts ee3feea17f0d5cbd34b3c940c159bc1700270194Commit:  6263df682bf82a5382d5b579a95224e6a25864aeAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:24 -0500Subject: Commit4Commit:  ee3feea17f0d5cbd34b3c940c159bc1700270194Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:23 -0500Subject: Commit3Commit:  67bf633855957d10f9b0576a8f3c2512ae6935e7Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:23 -0500Subject: Commit2Commit:  1d747efb17a449f598a42cc53b3fffe5cd855788Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:22 -0500Subject: Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert multiple commits but with one nonexistant commit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to revert multiple commits                      # Revert.feature:42
    Given I have a repository                                   # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                  # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "revert master~1 master~2"           # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "log"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Subject: Commit1"         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit2"          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit3"          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit4"          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Revert 'Commit2'" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Revert 'Commit3'" # DefaultStepDefinitions.the_response_should_contain(String)
Couldn't resolve 'blah' to a commit, aborting revert.
Commit:  604b0fdf710398dee334803a13a3c7dd0b996344Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:26 -0500Subject: Commit4Commit:  1c7af4ba05c6596218be99f53c4d3bff055c227eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:26 -0500Subject: Commit3Commit:  0650f7c853329edf4f43bb2e17a527342ce2dc83Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:25 -0500Subject: Commit2Commit:  43d6b55b9d51498a17fde9f76693ddc26288ac0cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:25 -0500Subject: Commit1
Commit:  604b0fdf710398dee334803a13a3c7dd0b996344Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:26 -0500Subject: Commit4Commit:  1c7af4ba05c6596218be99f53c4d3bff055c227eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:26 -0500Subject: Commit3Commit:  0650f7c853329edf4f43bb2e17a527342ce2dc83Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:25 -0500Subject: Commit2Commit:  43d6b55b9d51498a17fde9f76693ddc26288ac0cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:25 -0500Subject: Commit1
Commit:  604b0fdf710398dee334803a13a3c7dd0b996344Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:26 -0500Subject: Commit4Commit:  1c7af4ba05c6596218be99f53c4d3bff055c227eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:26 -0500Subject: Commit3Commit:  0650f7c853329edf4f43bb2e17a527342ce2dc83Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:25 -0500Subject: Commit2Commit:  43d6b55b9d51498a17fde9f76693ddc26288ac0cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:25 -0500Subject: Commit1
Commit:  604b0fdf710398dee334803a13a3c7dd0b996344Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:26 -0500Subject: Commit4Commit:  1c7af4ba05c6596218be99f53c4d3bff055c227eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:26 -0500Subject: Commit3Commit:  0650f7c853329edf4f43bb2e17a527342ce2dc83Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:25 -0500Subject: Commit2Commit:  43d6b55b9d51498a17fde9f76693ddc26288ac0cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:25 -0500Subject: Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert with conflict and abort': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to revert multiple commits but with one nonexistant commit                  # Revert.feature:54
    Given I have a repository                                                               # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                                              # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "revert master~1 blah"                                           # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Couldn't resolve 'blah' to a commit, aborting revert" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                                              # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
    When I run the command "log"                                                            # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Subject: Commit1"                                     # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit2"                                      # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit3"                                      # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Subject: Commit4"                                      # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Subject: Revert of commit"                         # DefaultStepDefinitions.the_response_should_not_contain(String)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Creating revert state of commit e35541d945e37fe6ec7ff8fb0949a4cbd227d7aa (Commit1)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 2 features in 3.763 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 1 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 1 changes staged in 11.87 ms

error: could not apply e35541d9 Commit1CONFLICT: conflict in Points/Points.1When you have fixed these conflicts, run 'geogig revert --continue' to continue the revert operation.To abort the revert operation, run 'geogig revert --abort'
error: could not apply e35541d9 Commit1CONFLICT: conflict in Points/Points.1When you have fixed these conflicts, run 'geogig revert --continue' to continue the revert operation.To abort the revert operation, run 'geogig revert --abort'
Revert aborted successfully.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert without commiting': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to revert with conflict and abort                           # Revert.feature:68
    Given I have a repository                                               # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                              # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "revert HEAD~3"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "could not apply"                      # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "CONFLICT: conflict in Points/Points.1" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                              # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
    When I run the command "revert --abort"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "aborted"                              # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Creating revert state of commit ea1676e69becda06746a58cca5f59de55cc3ceb8 (Commit4)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 1 features in 2.586 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 1 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 1 changes staged in 14.66 ms

[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to revert with conflict and continue': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to revert without commiting           # Revert.feature:78
    Given I have a repository                         # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                        # DefaultStepDefinitions.I_have_several_commits()
    And I run the command "revert master --no-commit" # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "log"                      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should not contain "Revert"     # DefaultStepDefinitions.the_response_should_not_contain(String)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Creating revert state of commit c53472cbf1ba2c3eaff87be84dbf5925e867afbc (Commit1)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 2 features in 4.803 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 1 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 1 changes staged in 17.21 ms

error: could not apply c53472cb Commit1CONFLICT: conflict in Points/Points.1When you have fixed these conflicts, run 'geogig revert --continue' to continue the revert operation.To abort the revert operation, run 'geogig revert --abort'
Commit:  542ed4efa403e3d0c1fc3afe44146b236b92e33dAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 17:05:36 +0000Subject: Revert 'Commit1'This reverts c53472cbf1ba2c3eaff87be84dbf5925e867afbcCommit:  42136e9238e5a908990724d5831f077018177907Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-12-26 12:05:35 -0500Subject: Commit4Commit:  0f63bffde37f91c9ca2842b77d357948b9417af8Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:35 -0500Subject: Commit3Commit:  1b8119eeb3420b5455a2ac616e1a337a664a58a3Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-12-26 12:05:34 -0500Subject: Commit2Commit:  c53472cbf1ba2c3eaff87be84dbf5925e867afbcAuthor:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-12-26 12:05:34 -0500Subject: Commit1

  Scenario: Try to revert with conflict and continue   # Revert.feature:85
    Given I have a repository                          # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                         # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "revert HEAD~3"             # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "could not apply" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code         # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
    When I have staged "points1"                       # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "revert --continue"         # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "log"                        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Revert"          # DefaultStepDefinitions.the_response_should_contain(String)
Feature: "show" command
    In order to know about a given element
    As a Geogig User
    I want to display information about it
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the description of a feature using only its path': Using URIBuilder DefaultTestRepoURIBuilder
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the description of a commit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the description of a feature using only its path                  # Show.feature:6
    Given I have a repository                                                             # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                                # DefaultStepDefinitions.I_stage_6_features()
    And I run the command "commit -m TestCommit"                                          # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "show Points/Points.1"                                         # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "ATTRIBUTES"                                         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "FEATURE TYPE ID"                                     # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "sp"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "pp"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "ip"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD:Points/Points.1}" # DefaultStepDefinitions.checkResponseTextContains(String)
    And the response should contain variable "{@PointsTypeID}"                            # DefaultStepDefinitions.checkResponseTextContains(String)
Commit:        cda4deb0aef6b787950580378bebff766b80fb8eAuthor:        John Doe <JohnDoe@example.com>Committer:     John Doe <JohnDoe@example.com>Author date:   (just now) Wed Dec 26 12:05:41 EST 2018Committer date:(just now) Wed Dec 26 12:05:41 EST 2018Subject:       TestCommit
Commit:        cda4deb0aef6b787950580378bebff766b80fb8eAuthor:        John Doe <JohnDoe@example.com>Committer:     John Doe <JohnDoe@example.com>Author date:   (just now) Wed Dec 26 12:05:41 EST 2018Committer date:(just now) Wed Dec 26 12:05:41 EST 2018Subject:       TestCommit
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the description of a tree': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the description of a commit                       # Show.feature:19
    Given I have a repository                                             # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                # DefaultStepDefinitions.I_stage_6_features()
    And I run the command "commit -m TestCommit"                          # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "show HEAD"                                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Commit"                             # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Author"                              # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD}" # DefaultStepDefinitions.checkResponseTextContains(String)
TREE ID:  99dfd3607e82eb0f85baa185c60da9da9d8858d9SIZE:  3NUMBER Of SUBTREES:  0DEFAULT FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0DEFAULT FEATURE TYPE ATTRIBUTESsp: <STRING>ip: <INTEGER>pp: <POINT>
TREE ID:  99dfd3607e82eb0f85baa185c60da9da9d8858d9SIZE:  3NUMBER Of SUBTREES:  0DEFAULT FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0DEFAULT FEATURE TYPE ATTRIBUTESsp: <STRING>ip: <INTEGER>pp: <POINT>
TREE ID:  99dfd3607e82eb0f85baa185c60da9da9d8858d9SIZE:  3NUMBER Of SUBTREES:  0DEFAULT FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0DEFAULT FEATURE TYPE ATTRIBUTESsp: <STRING>ip: <INTEGER>pp: <POINT>
TREE ID:  99dfd3607e82eb0f85baa185c60da9da9d8858d9SIZE:  3NUMBER Of SUBTREES:  0DEFAULT FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0DEFAULT FEATURE TYPE ATTRIBUTESsp: <STRING>ip: <INTEGER>pp: <POINT>
TREE ID:  99dfd3607e82eb0f85baa185c60da9da9d8858d9SIZE:  3NUMBER Of SUBTREES:  0DEFAULT FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0DEFAULT FEATURE TYPE ATTRIBUTESsp: <STRING>ip: <INTEGER>pp: <POINT>
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the description of a feature': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the description of a tree                                # Show.feature:28
    Given I have a repository                                                    # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                       # DefaultStepDefinitions.I_stage_6_features()
    And I run the command "commit -m TestCommit"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "show HEAD:Points"                                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "TREE ID"                                   # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "DEFAULT FEATURE TYPE ATTRIBUTES"            # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "sp"                                         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "pp"                                         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "ip"                                         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD:Points}" # DefaultStepDefinitions.checkResponseTextContains(String)
    And the response should contain variable "{@PointsTypeID}"                   # DefaultStepDefinitions.checkResponseTextContains(String)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
ID:  a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0ATTRIBUTES  ----------  sp: StringProp1_1ip: 1000pp: POINT (1 1)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the description of a feature using its SHA-1': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the description of a feature                                      # Show.feature:41
    Given I have a repository                                                             # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                                # DefaultStepDefinitions.I_stage_6_features()
    And I run the command "commit -m TestCommit"                                          # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "show HEAD:Points/Points.1"                                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "ATTRIBUTES"                                         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "FEATURE TYPE ID"                                     # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "sp"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "pp"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "ip"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD:Points/Points.1}" # DefaultStepDefinitions.checkResponseTextContains(String)
    And the response should contain variable "{@PointsTypeID}"                            # DefaultStepDefinitions.checkResponseTextContains(String)
id	a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURESTRING	StringProp1_1INTEGER	1000POINT	POINT (1 1)
id	a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURESTRING	StringProp1_1INTEGER	1000POINT	POINT (1 1)
id	a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURESTRING	StringProp1_1INTEGER	1000POINT	POINT (1 1)
id	a47ca38e5c3e92c94dec9e8ea597c642003ec878FEATURESTRING	StringProp1_1INTEGER	1000POINT	POINT (1 1)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the description of a feature with the --raw modifier': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the description of a feature using its SHA-1                                          # Show.feature:54
    Given I have a repository                                                                                 # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                                                    # DefaultStepDefinitions.I_stage_6_features()
    And I run the command "commit -m TestCommit"                                                              # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "show a47ca38e5c3e92c94dec9e8ea597c642003ec878"                                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "FEATURE"                                                                # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "STRING"                                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "INTEGER"                                                                 # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "POINT"                                                                   # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|a47ca38e5c3e92c94dec9e8ea597c642003ec878}" # DefaultStepDefinitions.checkResponseTextContains(String)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the description of a 2 features with the --raw modifier': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the description of a feature with the --raw modifier              # Show.feature:65
    Given I have a repository                                                             # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                                # DefaultStepDefinitions.I_stage_6_features()
    And I run the command "commit -m TestCommit"                                          # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "show HEAD:Points/Points.1 --raw"                              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "STRING"                                             # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "INTEGER"                                             # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "POINT urn:ogc:def:crs:EPSG::4326"                    # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "sp"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "pp"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "ip"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD:Points/Points.1}" # DefaultStepDefinitions.checkResponseTextContains(String)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)HEAD:Points/Points.20d0cdfa256daf663172f01a0a0d06a9ecf69e113spSTRINGStringProp1_2ipINTEGER2000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (2 2)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)HEAD:Points/Points.20d0cdfa256daf663172f01a0a0d06a9ecf69e113spSTRINGStringProp1_2ipINTEGER2000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (2 2)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)HEAD:Points/Points.20d0cdfa256daf663172f01a0a0d06a9ecf69e113spSTRINGStringProp1_2ipINTEGER2000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (2 2)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)HEAD:Points/Points.20d0cdfa256daf663172f01a0a0d06a9ecf69e113spSTRINGStringProp1_2ipINTEGER2000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (2 2)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)HEAD:Points/Points.20d0cdfa256daf663172f01a0a0d06a9ecf69e113spSTRINGStringProp1_2ipINTEGER2000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (2 2)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)HEAD:Points/Points.20d0cdfa256daf663172f01a0a0d06a9ecf69e113spSTRINGStringProp1_2ipINTEGER2000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (2 2)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)HEAD:Points/Points.20d0cdfa256daf663172f01a0a0d06a9ecf69e113spSTRINGStringProp1_2ipINTEGER2000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (2 2)
HEAD:Points/Points.1a47ca38e5c3e92c94dec9e8ea597c642003ec878spSTRINGStringProp1_1ipINTEGER1000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (1 1)HEAD:Points/Points.20d0cdfa256daf663172f01a0a0d06a9ecf69e113spSTRINGStringProp1_2ipINTEGER2000ppPOINT urn:ogc:def:crs:EPSG::4326POINT (2 2)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the description of a featuretype': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the description of a 2 features with the --raw modifier           # Show.feature:78
    Given I have a repository                                                             # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                                # DefaultStepDefinitions.I_stage_6_features()
    And I run the command "commit -m TestCommit"                                          # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "show HEAD:Points/Points.1 HEAD:Points/Points.2 --raw"         # DefaultStepDefinitions.I_run_the_command_X(String)
    And the response should contain "HEAD:Points/Points.1"                                # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "HEAD:Points/Points.2"                                # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "STRING"                                              # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "INTEGER"                                             # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "POINT"                                               # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "sp"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "pp"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "ip"                                                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD:Points/Points.1}" # DefaultStepDefinitions.checkResponseTextContains(String)
TREE ID:  99dfd3607e82eb0f85baa185c60da9da9d8858d9SIZE:  3NUMBER Of SUBTREES:  0DEFAULT FEATURE TYPE ID:  10b5dc054390266e0cc7b59ef34f543441f071e0DEFAULT FEATURE TYPE ATTRIBUTESsp: <STRING>ip: <INTEGER>pp: <POINT>

  Scenario: Try to show the description of a featuretype # Show.feature:93
    Given I have a repository                            # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                               # DefaultStepDefinitions.I_stage_6_features()
    And I run the command "commit -m TestCommit"         # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "show Points"                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "TREE ID"           # DefaultStepDefinitions.the_response_should_contain(String)
Feature: "squash" command
    In order to modify history of the repository
    As a Geogig User
    I want to squash commits
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Squash commits': Using URIBuilder DefaultTestRepoURIBuilder
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Squash commits with message': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Squash commits                                                # Squash.feature:6
    Given I have a repository                                             # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                            # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "squash HEAD~2 HEAD"                           # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "log --oneline"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain 2 lines                              # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    And the response should contain variable "{@ObjectId|localrepo|HEAD}" # DefaultStepDefinitions.checkResponseTextContains(String)
754af48f6f663d490cc519fc337bf53e1c4c5c07 squashed569af524099fc12570d3ffc732b339bbf26cf0bf Commit1
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Squash commits in wrong order': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Squash commits with message                                   # Squash.feature:14
    Given I have a repository                                             # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                            # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "squash HEAD~2 HEAD -m squashed"               # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "log --oneline"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain 2 lines                              # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    And the response should contain "squashed"                            # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD}" # DefaultStepDefinitions.checkResponseTextContains(String)
Commits provided in wrong order
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Squash commits with only one commit provided': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Squash commits in wrong order          # Squash.feature:23
    Given I have a repository                      # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                     # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "squash HEAD HEAD~2"    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "wrong order" # DefaultStepDefinitions.the_response_should_contain(String)
2 commit references must be supplied

  Scenario: Squash commits with only one commit provided                    # Squash.feature:29
    Given I have a repository                                               # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                              # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "squash HEAD~2"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "2 commit references must be supplied" # DefaultStepDefinitions.the_response_should_contain(String)
Feature: "status" command
    In order to know what I have staged and unstaged
    As a Geogig User
    I want to check the status of the current repository
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of an empty directory': Using URIBuilder DefaultTestRepoURIBuilder
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with no changes': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of an empty directory              # Status.feature:6
    Given I am in an empty directory                                 # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "status"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should start with "Not in a geogig repository" # DefaultStepDefinitions.the_response_should_start_with(String)
    And it should exit with non-zero exit code                       # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
# On branch masternothing to commit (working directory clean)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with unstaged changes without using a limit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with no changes # Status.feature:12
    Given I have a repository                                     # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "status"                               # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "nothing to commit"          # DefaultStepDefinitions.the_response_should_contain(String)
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with staged changes without using a limit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with unstaged changes without using a limit # Status.feature:17
    Given I have a repository                                                                 # DefaultStepDefinitions.I_have_a_repository()
    And I have unstaged "points1"                                                             # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "points2"                                                             # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "points3"                                                             # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines1"                                                              # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines2"                                                              # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines3"                                                              # DefaultStepDefinitions.I_have_unstaged(String)
    When I run the command "status"                                                           # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes not staged for commit"                          # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                                # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Changes to be committed"                             # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain 14 lines                                                  # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.#
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.#
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with staged and unstaged changes without using a limit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with staged changes without using a limit # Status.feature:31
    Given I have a repository                                                               # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                             # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                                             # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points3"                                                             # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                                              # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines2"                                                              # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines3"                                                              # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "status"                                                         # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes to be committed"                              # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                              # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Changes not staged for commit"                     # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain 14 lines                                                # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with unstaged changes specifying all': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with staged and unstaged changes without using a limit # Status.feature:45
    Given I have a repository                                                                            # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                                                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points3"                                                                          # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                                                           # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines2"                                                                           # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines3"                                                                           # DefaultStepDefinitions.I_have_staged(String)
    And I modify a feature                                                                               # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "status"                                                                      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes to be committed"                                           # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                                           # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Changes not staged for commit"                                      # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "2 total."                                                           # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 21 lines                                                             # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with staged changes specifying all': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with unstaged changes specifying all # Status.feature:61
    Given I have a repository                                                          # DefaultStepDefinitions.I_have_a_repository()
    And I have unstaged "points1"                                                      # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "points2"                                                      # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "points3"                                                      # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines1"                                                       # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines2"                                                       # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines3"                                                       # DefaultStepDefinitions.I_have_unstaged(String)
    When I run the command "status --all"                                              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes not staged for commit"                   # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                         # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Changes to be committed"                      # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain 14 lines                                           # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.#
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.1#      added  Lines/Lines.2#      added  Lines/Lines.3# 8 total.#
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with staged and unstaged changes specifying all': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with staged changes specifying all # Status.feature:75
    Given I have a repository                                                        # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points3"                                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                                       # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines2"                                                       # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines3"                                                       # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "status --all"                                            # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes to be committed"                       # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                       # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Changes not staged for commit"              # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain 14 lines                                         # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Lines/Lines.1#      added  Points/Points.2#      added  Lines/Lines.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.3# 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Lines/Lines.1#      added  Points/Points.2#      added  Lines/Lines.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.3# 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Lines/Lines.1#      added  Points/Points.2#      added  Lines/Lines.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.3# 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Lines/Lines.1#      added  Points/Points.2#      added  Lines/Lines.2#      added  Points/Points.3#      added  Points/Points.1#      added  Lines/Lines.3# 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      modified  Points#      modified  Points/Points.1# 2 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with unstaged changes using a limit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with staged and unstaged changes specifying all # Status.feature:89
    Given I have a repository                                                                     # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points3"                                                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                                                    # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines2"                                                                    # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines3"                                                                    # DefaultStepDefinitions.I_have_staged(String)
    And I modify a feature                                                                        # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "status --all"                                                         # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes to be committed"                                    # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                                    # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Changes not staged for commit"                               # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "2 total."                                                    # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 21 lines                                                      # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      added  Points#      added  Lines#      added  Points/Points.2# 8 total.
# On branch master# Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory##      added  Points#      added  Lines#      added  Points/Points.2# 8 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with staged changes using a limit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with unstaged changes using a limit # Status.feature:105
    Given I have a repository                                                         # DefaultStepDefinitions.I_have_a_repository()
    And I have unstaged "points1"                                                     # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "points2"                                                     # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "points3"                                                     # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines1"                                                      # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines2"                                                      # DefaultStepDefinitions.I_have_unstaged(String)
    And I have unstaged "lines3"                                                      # DefaultStepDefinitions.I_have_unstaged(String)
    When I run the command "status --limit 3"                                         # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes not staged for commit"                  # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                        # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 9 lines                                           # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2# 8 total.#
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      added  Points#      added  Lines#      added  Points/Points.2# 8 total.#
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with staged and unstaged changes using a limit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with staged changes using a limit # Status.feature:118
    Given I have a repository                                                       # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                     # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                                     # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points3"                                                     # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines2"                                                      # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines3"                                                      # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "status --limit 3"                                       # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes to be committed"                      # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                      # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 9 lines                                         # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)## 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory## 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)## 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory## 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)## 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory## 2 total.
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)## 8 total.## Changes not staged for commit:#   (use "geogig add <path/to/fid>..." to update what will be committed#   (use "geogig checkout -- <path/to/fid>..." to discard changes in working directory## 2 total.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to get the status of a repository with a negative limit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with staged and unstaged changes using a limit # Status.feature:131
    Given I have a repository                                                                    # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                                  # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points2"                                                                  # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "points3"                                                                  # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines1"                                                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines2"                                                                   # DefaultStepDefinitions.I_have_staged(String)
    And I have staged "lines3"                                                                   # DefaultStepDefinitions.I_have_staged(String)
    And I modify a feature                                                                       # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "status --limit 0"                                                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Changes to be committed"                                   # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "8 total."                                                   # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Changes not staged for commit"                              # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "2 total."                                                   # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain 11 lines                                                     # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
Limit must be 0 or greater.
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try the get the status of a repository with unmerged elements': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to get the status of a repository with a negative limit # Status.feature:147
    Given I have a repository                                           # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "status --limit -2"                          # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Limit must be 0 or greater"       # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                          # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
# On branch master# Changes to be committed:#   (use "geogig reset HEAD <path/to/fid>..." to unstage)##      modified  Points#      added  Points/Points.2# 2 total.## Unmerged paths:#   (use "geogig add/rm <path/to/fid>..." as appropriate to mark resolution##      unmerged  Points/Points.1# 1 total.

  Scenario: Try the get the status of a repository with unmerged elements # Status.feature:153
    Given I have a repository                                             # DefaultStepDefinitions.I_have_a_repository()
    And I have a merge conflict state                                     # DefaultStepDefinitions.I_have_a_merge_conflict_state()
    When I run the command "status"                                       # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "unmerged  Points/Points.1"          # DefaultStepDefinitions.the_response_should_contain(String)
Feature: "tag" command
  In order to store defined versions of my repository
  As a Geogig User
  I want to be create tags
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'List the available tags': Using URIBuilder DefaultTestRepoURIBuilder
mytag
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Create a new tag': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: List the available tags          # Tag.feature:6
    Given I have a repository                # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits               # DefaultStepDefinitions.I_have_several_commits()
    And I run the command "tag mytag -m msg" # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "tag"             # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "mytag" # DefaultStepDefinitions.the_response_should_contain(String)
Created tag mytag -> 0980cad1ccd6c2f22e76949b5a0c9c3cfebe6ee5
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Create a new tag for a given commit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Create a new tag                                              # Tag.feature:13
    Given I have a repository                                             # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                            # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "tag mytag -m msg"                             # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Created tag mytag ->"               # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD}" # DefaultStepDefinitions.checkResponseTextContains(String)
Created tag mytag -> e534c540508bee67db38cddb9c30c17e55d4549c
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Delete a tag': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Create a new tag for a given commit                            # Tag.feature:20
    Given I have a repository                                              # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                             # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "tag mytag HEAD^ -m msg"                        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Created tag mytag ->"                # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain variable "{@ObjectId|localrepo|HEAD^}" # DefaultStepDefinitions.checkResponseTextContains(String)
Deleted tag mytag
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Delete an inexistent tag': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Delete a tag                                 # Tag.feature:27
    Given I have a repository                            # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                           # DefaultStepDefinitions.I_have_several_commits()
    And I run the command "tag mytag -m msg"             # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "tag -d mytag"                # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Deleted tag mytag" # DefaultStepDefinitions.the_response_should_contain(String)
Wrong tag name: wrongtag
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to create a tag with too many parameters provided': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Delete an inexistent tag                            # Tag.feature:34
    Given I have a repository                                   # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                  # DefaultStepDefinitions.I_have_several_commits()
    And I run the command "tag mytag -m msg"                    # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "tag -d wrongtag"                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Wrong tag name: wrongtag" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                  # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Too many parameters provided
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to delete a tag with too many parameters provided': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to create a tag with too many parameters provided   # Tag.feature:42
    Given I have a repository                                       # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                      # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "tag mytag HEAD^ extraparam -m msg"      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Too many parameters provided" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                      # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Too many parameters provided
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to create a tag with no message': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to delete a tag with too many parameters provided   # Tag.feature:49
    Given I have a repository                                       # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                      # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "tag -d mytag HEAD^"                     # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Too many parameters provided" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                      # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
No tag message provided
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to create a tag with a wrong commit ref': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to create a tag with no message                # Tag.feature:56
    Given I have a repository                                  # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                 # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "tag mytag HEAD^"                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "No tag message provided" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                 # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
Wrong reference: aaaaaaaa

  Scenario: Try to create a tag with a wrong commit ref          # Tag.feature:63
    Given I have a repository                                    # DefaultStepDefinitions.I_have_a_repository()
    And I have several commits                                   # DefaultStepDefinitions.I_have_several_commits()
    When I run the command "tag mytag aaaaaaaa -m msg"           # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Wrong reference: aaaaaaaa" # DefaultStepDefinitions.the_response_should_contain(String)
    And it should exit with non-zero exit code                   # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()
@Version
Feature: "version" command
    In order to view GeoGig version information
    As a Geogig User
    I want to display information about it
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'I want to view the GeoGig version': Using URIBuilder DefaultTestRepoURIBuilder
         Project Version : 1.4-SNAPSHOT              Build Time : December 26, 2018 at 11:58:17 EST         Build User Name : GeoGig Bot        Build User Email : geogig-bot@eclipse.org              Git Branch : origin/master           Git Commit ID : 68fab4c4b615f17e1c19db3ac72058aa6c7effd9         Git Commit Time : December 26, 2018 at 11:48:19 EST  Git Commit Author Name : Gabriel Roldan Git Commit Author Email : gabriel.roldan@gmail.com      Git Commit Message : Revert to single root pom, maven doens't deploy dependencies/pom.xmlSigned-off-by: Gabriel Roldan <gabriel.roldan@gmail.com>
         Project Version : 1.4-SNAPSHOT              Build Time : December 26, 2018 at 11:58:17 EST         Build User Name : GeoGig Bot        Build User Email : geogig-bot@eclipse.org              Git Branch : origin/master           Git Commit ID : 68fab4c4b615f17e1c19db3ac72058aa6c7effd9         Git Commit Time : December 26, 2018 at 11:48:19 EST  Git Commit Author Name : Gabriel Roldan Git Commit Author Email : gabriel.roldan@gmail.com      Git Commit Message : Revert to single root pom, maven doens't deploy dependencies/pom.xmlSigned-off-by: Gabriel Roldan <gabriel.roldan@gmail.com>
         Project Version : 1.4-SNAPSHOT              Build Time : December 26, 2018 at 11:58:17 EST         Build User Name : GeoGig Bot        Build User Email : geogig-bot@eclipse.org              Git Branch : origin/master           Git Commit ID : 68fab4c4b615f17e1c19db3ac72058aa6c7effd9         Git Commit Time : December 26, 2018 at 11:48:19 EST  Git Commit Author Name : Gabriel Roldan Git Commit Author Email : gabriel.roldan@gmail.com      Git Commit Message : Revert to single root pom, maven doens't deploy dependencies/pom.xmlSigned-off-by: Gabriel Roldan <gabriel.roldan@gmail.com>

  Scenario: I want to view the GeoGig version          # Version.feature:7
    Given I am in an empty directory                   # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "version"                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Project Version" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Build Time"       # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Git Commit ID"    # DefaultStepDefinitions.the_response_should_contain(String)

263 Scenarios (263 passed)
1765 Steps (1765 passed)
8m24.737s

Tests run: 2028, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 506.51 sec - in org.locationtech.geogig.cli.test.functional.RunPorcelainFunctionalTest

Results :

Tests run: 3083, Failures: 0, Errors: 0, Skipped: 0

[JENKINS] Recording test results
[INFO] 
[INFO] --- maven-jar-plugin:3.0.2:jar (default-jar) @ geogig-cli-core ---
[INFO] Building jar: /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/target/geogig-cli-core-1.4-SNAPSHOT.jar
[INFO] 
[INFO] --- maven-jar-plugin:3.0.2:test-jar (default) @ geogig-cli-core ---
[INFO] Building jar: /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/target/geogig-cli-core-1.4-SNAPSHOT-tests.jar
[INFO] 
[INFO] >>> maven-source-plugin:3.0.1:jar (attach-sources) > generate-sources @ geogig-cli-core >>>
[INFO] 
[INFO] --- git-commit-id-plugin:2.2.2:revision (default) @ geogig-cli-core ---
[WARNING] Failed to getClass for org.apache.maven.plugins.source.SourceJarMojo
[INFO] 
[INFO] <<< maven-source-plugin:3.0.1:jar (attach-sources) < generate-sources @ geogig-cli-core <<<
[INFO] 
[INFO] 
[INFO] --- maven-source-plugin:3.0.1:jar (attach-sources) @ geogig-cli-core ---
[INFO] Building jar: /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/target/geogig-cli-core-1.4-SNAPSHOT-sources.jar
[INFO] 
[INFO] >>> maven-source-plugin:3.0.1:test-jar (attach-sources) > generate-sources @ geogig-cli-core >>>
[INFO] 
[INFO] --- git-commit-id-plugin:2.2.2:revision (default) @ geogig-cli-core ---
[WARNING] Failed to getClass for org.apache.maven.plugins.source.TestSourceJarMojo
[INFO] 
[INFO] <<< maven-source-plugin:3.0.1:test-jar (attach-sources) < generate-sources @ geogig-cli-core <<<
[INFO] 
[INFO] 
[INFO] --- maven-source-plugin:3.0.1:test-jar (attach-sources) @ geogig-cli-core ---
[INFO] Building jar: /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/target/geogig-cli-core-1.4-SNAPSHOT-test-sources.jar
[INFO] 
[INFO] --- maven-install-plugin:2.4:install (default-install) @ geogig-cli-core ---
[INFO] Installing /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/target/geogig-cli-core-1.4-SNAPSHOT.jar to /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/.repository/org/locationtech/geogig/geogig-cli-core/1.4-SNAPSHOT/geogig-cli-core-1.4-SNAPSHOT.jar
[INFO] Installing /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/pom.xml to /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/.repository/org/locationtech/geogig/geogig-cli-core/1.4-SNAPSHOT/geogig-cli-core-1.4-SNAPSHOT.pom
[INFO] Installing /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/target/geogig-cli-core-1.4-SNAPSHOT-tests.jar to /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/.repository/org/locationtech/geogig/geogig-cli-core/1.4-SNAPSHOT/geogig-cli-core-1.4-SNAPSHOT-tests.jar
[INFO] Installing /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/target/geogig-cli-core-1.4-SNAPSHOT-sources.jar to /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/.repository/org/locationtech/geogig/geogig-cli-core/1.4-SNAPSHOT/geogig-cli-core-1.4-SNAPSHOT-sources.jar
[INFO] Installing /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/src/cli/core/target/geogig-cli-core-1.4-SNAPSHOT-test-sources.jar to /home/hudson/genie.geogig/.jenkins/jobs/geogig-master/workspace/.repository/org/locationtech/geogig/geogig-cli-core/1.4-SNAPSHOT/geogig-cli-core-1.4-SNAPSHOT-test-sources.jar
[JENKINS] Archiving disabled