SuccessConsole Output

Skipping 496 KB.. Full Log
dea9bbe35748cAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:07:29 -0300Subject: Commit4Commit:  9c166835f05a1d0c6b255df714892727eb704ee5Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:07:30 -0300Subject: Commit5Commit:  54e9a1b1fb6de925a50e272e745804a0cccff12fAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:28 -0300Subject: 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.0
error: could not apply 70b315b3 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:  ee8e041d2414e801e372f4d386813649ab6e0c9cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:39 -0300Subject: Commit3Commit:  657b81dc90d44aeb1dec2c941804a0c195c984c8Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:07:40 -0300Subject: Commit4Commit:  52dd391ecc0977681e6c81acf6e3c8f49819b360Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:38 -0300Subject: Commit1
Commit:  ee8e041d2414e801e372f4d386813649ab6e0c9cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:39 -0300Subject: Commit3Commit:  657b81dc90d44aeb1dec2c941804a0c195c984c8Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:07:40 -0300Subject: Commit4Commit:  52dd391ecc0977681e6c81acf6e3c8f49819b360Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:38 -0300Subject: Commit1
Commit:  ee8e041d2414e801e372f4d386813649ab6e0c9cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:39 -0300Subject: Commit3Commit:  657b81dc90d44aeb1dec2c941804a0c195c984c8Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:07:40 -0300Subject: Commit4Commit:  52dd391ecc0977681e6c81acf6e3c8f49819b360Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:38 -0300Subject: 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:  75ef33a7e10369c08f17ad3401edb5e249879a31Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit3Commit:  0aeeff3f85d7a80c7ca21edb329de243878ab061Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit2Commit:  8806d8e078272741558465a26fca33dee35b8440Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:43 -0300Subject: Commit4Commit:  45b7406cc0abe2a89b9c6cdce70631bc02326672Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit1
Commit:  75ef33a7e10369c08f17ad3401edb5e249879a31Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit3Commit:  0aeeff3f85d7a80c7ca21edb329de243878ab061Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit2Commit:  8806d8e078272741558465a26fca33dee35b8440Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:43 -0300Subject: Commit4Commit:  45b7406cc0abe2a89b9c6cdce70631bc02326672Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit1
Commit:  75ef33a7e10369c08f17ad3401edb5e249879a31Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit3Commit:  0aeeff3f85d7a80c7ca21edb329de243878ab061Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit2Commit:  8806d8e078272741558465a26fca33dee35b8440Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:43 -0300Subject: Commit4Commit:  45b7406cc0abe2a89b9c6cdce70631bc02326672Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit1
Commit:  75ef33a7e10369c08f17ad3401edb5e249879a31Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit3Commit:  0aeeff3f85d7a80c7ca21edb329de243878ab061Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:42 -0300Subject: Commit2Commit:  8806d8e078272741558465a26fca33dee35b8440Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:07:43 -0300Subject: Commit4Commit:  45b7406cc0abe2a89b9c6cdce70631bc02326672Author:  John Doe <JohnDoe@example.com>Date:    (2 seconds ago) 2018-09-30 20:07:42 -0300Subject: 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.0
Building final tree PointsTree Points staged in 537.1 μsRemoving 0 merged conflicts...Done. 1 unmerged conflicts.error: could not apply af2b3728 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
[1c7efd2dbf25363a3193aea466a1a4df52a9c0e3] 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
[61afe8f4fbfe245f56d920d4fce62ab106bc4384] 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
[a4e82cfe7a53ff5d81c7918a63aa87bd23496f80] 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
[cbb4aec0eb9ec959f8eb36c2e68573a1df4a1bed] 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
[d5cef94ed038e9efb0bbdc8b8c273048fbf25613] 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
[bc6126132e2c543d92ec9659101b88c57e0d68e2] 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
[c4c563ee2a00822f43904dfeec84aae466b48091] 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
[a42a0ab95c4e3c1f10957215bfc4bbb9347d85d1] 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
[20f1920a0cfb8a475980badbe4a44e18aec618a4] 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:  c56597431cb2b50b0d398fe23cc7cb1171f074adAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:13 -0300Subject: Commit3Commit:  8a8c5caa1128398e64a2a41ee6d57f88c0dfb1f2Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:13 -0300Subject: Commit2Commit:  363670a5ab515885c03b603932ce365209edf5b0Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:12 -0300Subject: Commit1
Commit:  c56597431cb2b50b0d398fe23cc7cb1171f074adAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:13 -0300Subject: Commit3Commit:  8a8c5caa1128398e64a2a41ee6d57f88c0dfb1f2Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:13 -0300Subject: Commit2Commit:  363670a5ab515885c03b603932ce365209edf5b0Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:12 -0300Subject: Commit1
Commit:  c56597431cb2b50b0d398fe23cc7cb1171f074adAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:13 -0300Subject: Commit3Commit:  8a8c5caa1128398e64a2a41ee6d57f88c0dfb1f2Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:13 -0300Subject: Commit2Commit:  363670a5ab515885c03b603932ce365209edf5b0Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:12 -0300Subject: 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
[e7e9e0ddc45276765741c1941d4af983ce7673de] 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/junit6354988521215949124/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 0aa8af81ee55463afac04888c987b524aed31bbf (Commit4)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 1 features in 4.065 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 1 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 1 changes staged in 10.55 ms

Commit:  30a838d7bf8a8674a1886105a365ec6416b824ecAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:21 +0100Subject: Revert 'Commit4'This reverts 0aa8af81ee55463afac04888c987b524aed31bbfCommit:  0aa8af81ee55463afac04888c987b524aed31bbfAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:21 -0300Subject: Commit4Commit:  6d9437d943e225ebac327788493d38626349cd1dAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit3Commit:  54eb8bd32336bdc74cfd74ccc09971e77e05ca0eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit2Commit:  75734e5b5b313ca2745373207ee49b9c84ac35edAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:20 -0300Subject: Commit1
Commit:  30a838d7bf8a8674a1886105a365ec6416b824ecAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:21 +0100Subject: Revert 'Commit4'This reverts 0aa8af81ee55463afac04888c987b524aed31bbfCommit:  0aa8af81ee55463afac04888c987b524aed31bbfAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:21 -0300Subject: Commit4Commit:  6d9437d943e225ebac327788493d38626349cd1dAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit3Commit:  54eb8bd32336bdc74cfd74ccc09971e77e05ca0eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit2Commit:  75734e5b5b313ca2745373207ee49b9c84ac35edAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:20 -0300Subject: Commit1
Commit:  30a838d7bf8a8674a1886105a365ec6416b824ecAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:21 +0100Subject: Revert 'Commit4'This reverts 0aa8af81ee55463afac04888c987b524aed31bbfCommit:  0aa8af81ee55463afac04888c987b524aed31bbfAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:21 -0300Subject: Commit4Commit:  6d9437d943e225ebac327788493d38626349cd1dAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit3Commit:  54eb8bd32336bdc74cfd74ccc09971e77e05ca0eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit2Commit:  75734e5b5b313ca2745373207ee49b9c84ac35edAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:20 -0300Subject: Commit1
Commit:  30a838d7bf8a8674a1886105a365ec6416b824ecAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:21 +0100Subject: Revert 'Commit4'This reverts 0aa8af81ee55463afac04888c987b524aed31bbfCommit:  0aa8af81ee55463afac04888c987b524aed31bbfAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:21 -0300Subject: Commit4Commit:  6d9437d943e225ebac327788493d38626349cd1dAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit3Commit:  54eb8bd32336bdc74cfd74ccc09971e77e05ca0eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit2Commit:  75734e5b5b313ca2745373207ee49b9c84ac35edAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:20 -0300Subject: Commit1
Commit:  30a838d7bf8a8674a1886105a365ec6416b824ecAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:21 +0100Subject: Revert 'Commit4'This reverts 0aa8af81ee55463afac04888c987b524aed31bbfCommit:  0aa8af81ee55463afac04888c987b524aed31bbfAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:21 -0300Subject: Commit4Commit:  6d9437d943e225ebac327788493d38626349cd1dAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit3Commit:  54eb8bd32336bdc74cfd74ccc09971e77e05ca0eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:20 -0300Subject: Commit2Commit:  75734e5b5b313ca2745373207ee49b9c84ac35edAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:20 -0300Subject: 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:  0df14368417786867030682127a0ec6ba85f9a91Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:23 -0300Subject: Commit4Commit:  2f5d236fd87948b483e538f77c1e01286c6d9b2fAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:22 -0300Subject: Commit3Commit:  b7b0f6bad9c4b5033833bc16f4676909e1a58b53Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:22 -0300Subject: Commit2Commit:  d5cdee6e827ea88252e23401f3e423912983c142Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:22 -0300Subject: Commit1
Commit:  0df14368417786867030682127a0ec6ba85f9a91Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:23 -0300Subject: Commit4Commit:  2f5d236fd87948b483e538f77c1e01286c6d9b2fAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:22 -0300Subject: Commit3Commit:  b7b0f6bad9c4b5033833bc16f4676909e1a58b53Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:22 -0300Subject: Commit2Commit:  d5cdee6e827ea88252e23401f3e423912983c142Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:22 -0300Subject: Commit1
Commit:  0df14368417786867030682127a0ec6ba85f9a91Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:23 -0300Subject: Commit4Commit:  2f5d236fd87948b483e538f77c1e01286c6d9b2fAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:22 -0300Subject: Commit3Commit:  b7b0f6bad9c4b5033833bc16f4676909e1a58b53Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:22 -0300Subject: Commit2Commit:  d5cdee6e827ea88252e23401f3e423912983c142Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:22 -0300Subject: Commit1
Commit:  0df14368417786867030682127a0ec6ba85f9a91Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:23 -0300Subject: Commit4Commit:  2f5d236fd87948b483e538f77c1e01286c6d9b2fAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:22 -0300Subject: Commit3Commit:  b7b0f6bad9c4b5033833bc16f4676909e1a58b53Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:22 -0300Subject: Commit2Commit:  d5cdee6e827ea88252e23401f3e423912983c142Author:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:22 -0300Subject: 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 91ea74edc5e37324e40c8dd417b9b3cebfc500bc (Commit3)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 2 features in 12.76 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 2 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 2 changes staged in 11.78 ms

[main] INFO org.locationtech.geogig.porcelain.RevertOp - Creating revert state of commit 309f61817ac8894cff68bac4bd7b51192baa85eb (Commit2)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 2 features in 12.71 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 2 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 2 changes staged in 11.19 ms

Commit:  f57cb6865bdec0188e7a1f80886b7d13fed86da3Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit2'This reverts 309f61817ac8894cff68bac4bd7b51192baa85ebCommit:  51308f97356eb6b54077fec1b8700ed59fa0a0e9Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit3'This reverts 91ea74edc5e37324e40c8dd417b9b3cebfc500bcCommit:  00662ac30e3d18696b5eb8e95c394a4ad3834c1eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit4Commit:  91ea74edc5e37324e40c8dd417b9b3cebfc500bcAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit3Commit:  309f61817ac8894cff68bac4bd7b51192baa85ebAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit2Commit:  6c0ab348d7d76cd0ff987112e79bf63d6114d54cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:23 -0300Subject: Commit1
Commit:  f57cb6865bdec0188e7a1f80886b7d13fed86da3Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit2'This reverts 309f61817ac8894cff68bac4bd7b51192baa85ebCommit:  51308f97356eb6b54077fec1b8700ed59fa0a0e9Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit3'This reverts 91ea74edc5e37324e40c8dd417b9b3cebfc500bcCommit:  00662ac30e3d18696b5eb8e95c394a4ad3834c1eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit4Commit:  91ea74edc5e37324e40c8dd417b9b3cebfc500bcAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit3Commit:  309f61817ac8894cff68bac4bd7b51192baa85ebAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit2Commit:  6c0ab348d7d76cd0ff987112e79bf63d6114d54cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:23 -0300Subject: Commit1
Commit:  f57cb6865bdec0188e7a1f80886b7d13fed86da3Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit2'This reverts 309f61817ac8894cff68bac4bd7b51192baa85ebCommit:  51308f97356eb6b54077fec1b8700ed59fa0a0e9Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit3'This reverts 91ea74edc5e37324e40c8dd417b9b3cebfc500bcCommit:  00662ac30e3d18696b5eb8e95c394a4ad3834c1eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit4Commit:  91ea74edc5e37324e40c8dd417b9b3cebfc500bcAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit3Commit:  309f61817ac8894cff68bac4bd7b51192baa85ebAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit2Commit:  6c0ab348d7d76cd0ff987112e79bf63d6114d54cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:23 -0300Subject: Commit1
Commit:  f57cb6865bdec0188e7a1f80886b7d13fed86da3Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit2'This reverts 309f61817ac8894cff68bac4bd7b51192baa85ebCommit:  51308f97356eb6b54077fec1b8700ed59fa0a0e9Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit3'This reverts 91ea74edc5e37324e40c8dd417b9b3cebfc500bcCommit:  00662ac30e3d18696b5eb8e95c394a4ad3834c1eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit4Commit:  91ea74edc5e37324e40c8dd417b9b3cebfc500bcAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit3Commit:  309f61817ac8894cff68bac4bd7b51192baa85ebAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit2Commit:  6c0ab348d7d76cd0ff987112e79bf63d6114d54cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:23 -0300Subject: Commit1
Commit:  f57cb6865bdec0188e7a1f80886b7d13fed86da3Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit2'This reverts 309f61817ac8894cff68bac4bd7b51192baa85ebCommit:  51308f97356eb6b54077fec1b8700ed59fa0a0e9Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit3'This reverts 91ea74edc5e37324e40c8dd417b9b3cebfc500bcCommit:  00662ac30e3d18696b5eb8e95c394a4ad3834c1eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit4Commit:  91ea74edc5e37324e40c8dd417b9b3cebfc500bcAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit3Commit:  309f61817ac8894cff68bac4bd7b51192baa85ebAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit2Commit:  6c0ab348d7d76cd0ff987112e79bf63d6114d54cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:23 -0300Subject: Commit1
Commit:  f57cb6865bdec0188e7a1f80886b7d13fed86da3Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit2'This reverts 309f61817ac8894cff68bac4bd7b51192baa85ebCommit:  51308f97356eb6b54077fec1b8700ed59fa0a0e9Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:25 +0100Subject: Revert 'Commit3'This reverts 91ea74edc5e37324e40c8dd417b9b3cebfc500bcCommit:  00662ac30e3d18696b5eb8e95c394a4ad3834c1eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit4Commit:  91ea74edc5e37324e40c8dd417b9b3cebfc500bcAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit3Commit:  309f61817ac8894cff68bac4bd7b51192baa85ebAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:24 -0300Subject: Commit2Commit:  6c0ab348d7d76cd0ff987112e79bf63d6114d54cAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:23 -0300Subject: 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:  2382f62770a291ba34cd54bc35be3e53bd9585a7Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit4Commit:  459ff9469c8b1d6686305a16aadacb706813cab1Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit3Commit:  77c48c97871ac7077b1b830478007553e32d115eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit2Commit:  883fed4bc78c886ea0a8e74337b87209fb2a3c6fAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:25 -0300Subject: Commit1
Commit:  2382f62770a291ba34cd54bc35be3e53bd9585a7Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit4Commit:  459ff9469c8b1d6686305a16aadacb706813cab1Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit3Commit:  77c48c97871ac7077b1b830478007553e32d115eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit2Commit:  883fed4bc78c886ea0a8e74337b87209fb2a3c6fAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:25 -0300Subject: Commit1
Commit:  2382f62770a291ba34cd54bc35be3e53bd9585a7Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit4Commit:  459ff9469c8b1d6686305a16aadacb706813cab1Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit3Commit:  77c48c97871ac7077b1b830478007553e32d115eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit2Commit:  883fed4bc78c886ea0a8e74337b87209fb2a3c6fAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:25 -0300Subject: Commit1
Commit:  2382f62770a291ba34cd54bc35be3e53bd9585a7Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit4Commit:  459ff9469c8b1d6686305a16aadacb706813cab1Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit3Commit:  77c48c97871ac7077b1b830478007553e32d115eAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:26 -0300Subject: Commit2Commit:  883fed4bc78c886ea0a8e74337b87209fb2a3c6fAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:25 -0300Subject: 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 398b4d4d21cb13f60616227c4ecb0b59575bafbb (Commit1)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 2 features in 13.63 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 1 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 1 changes staged in 10.23 ms

error: could not apply 398b4d4d 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 398b4d4d 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 9d79f5f362beb7dbebee0b8771422babea240108 (Commit4)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 1 features in 2.203 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 1 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 1 changes staged in 8.976 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 8ca34fc2a61de000d22d642788b585c781372fda (Commit1)
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Created revert state of 2 features in 3.075 ms
[main] INFO org.locationtech.geogig.porcelain.RevertOp - Staging 1 changes...
[main] INFO org.locationtech.geogig.porcelain.RevertOp - 1 changes staged in 9.310 ms

error: could not apply 8ca34fc2 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:  bbdca2ecd4358f81b7fe781675b63056dd02b860Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-10-01 00:08:33 +0100Subject: Revert 'Commit1'This reverts 8ca34fc2a61de000d22d642788b585c781372fdaCommit:  e5dec1335c36efe246f55beb80de40d2007965d6Author:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:32 -0300Subject: Commit4Commit:  68038b2aa4fb94ba4df082a828fec3d2945a3edeAuthor:  John Doe <JohnDoe@example.com>Date:    (just now) 2018-09-30 20:08:32 -0300Subject: Commit3Commit:  74617510e65fb041715f1cc45b9f14734bbcc57bAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:32 -0300Subject: Commit2Commit:  8ca34fc2a61de000d22d642788b585c781372fdaAuthor:  John Doe <JohnDoe@example.com>Date:    (1 seconds ago) 2018-09-30 20:08:31 -0300Subject: 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:        096157570fb5122352c7c8ef32d2324a625f8dadAuthor:        John Doe <JohnDoe@example.com>Committer:     John Doe <JohnDoe@example.com>Author date:   (just now) Sun Sep 30 19:08:36 EDT 2018Committer date:(just now) Sun Sep 30 19:08:36 EDT 2018Subject:       TestCommit
Commit:        096157570fb5122352c7c8ef32d2324a625f8dadAuthor:        John Doe <JohnDoe@example.com>Committer:     John Doe <JohnDoe@example.com>Author date:   (just now) Sun Sep 30 19:08:36 EDT 2018Committer date:(just now) Sun Sep 30 19:08:36 EDT 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)
8d839ceda3cadb64479d419314920a415287e1cf squashedbd872abe653fa6aa641840002e09819ae9fb487c 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  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 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 -> 4656afe7a153f617f7f178cfd307aa54aedad28e
[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 -> 20fa8fcff528a89e728985e31daa57c440f92374
[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 : September 30, 2018 at 19:01:49 EDT         Build User Name : GeoGig Bot        Build User Email : geogig-bot@eclipse.org              Git Branch : origin/master           Git Commit ID : 21c329bdb8d649a2e42e22ca0b1fa6605b50b747         Git Commit Time : September 30, 2018 at 18:45:00 EDT  Git Commit Author Name : Gabriel Roldan Git Commit Author Email : groldan@boundlessgeo.com      Git Commit Message : Merge branch 'bug/update_indexes'
         Project Version : 1.4-SNAPSHOT              Build Time : September 30, 2018 at 19:01:49 EDT         Build User Name : GeoGig Bot        Build User Email : geogig-bot@eclipse.org              Git Branch : origin/master           Git Commit ID : 21c329bdb8d649a2e42e22ca0b1fa6605b50b747         Git Commit Time : September 30, 2018 at 18:45:00 EDT  Git Commit Author Name : Gabriel Roldan Git Commit Author Email : groldan@boundlessgeo.com      Git Commit Message : Merge branch 'bug/update_indexes'
         Project Version : 1.4-SNAPSHOT              Build Time : September 30, 2018 at 19:01:49 EDT         Build User Name : GeoGig Bot        Build User Email : geogig-bot@eclipse.org              Git Branch : origin/master           Git Commit ID : 21c329bdb8d649a2e42e22ca0b1fa6605b50b747         Git Commit Time : September 30, 2018 at 18:45:00 EDT  Git Commit Author Name : Gabriel Roldan Git Commit Author Email : groldan@boundlessgeo.com      Git Commit Message : Merge branch 'bug/update_indexes'

  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)
7m24.984s

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

Results :

Tests run: 3098, 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