SuccessConsole Output

Skipping 199 KB.. Full Log
ummary # Diff.feature:18
    Given I have a repository                                              # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                 # DefaultStepDefinitions.I_stage_6_features()
    And I modify a feature                                                 # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "diff --summary"                                # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Points/Points.1"                     # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Show diff between working tree and index, for a single modified tree': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Show diff between working tree and index, when no changes have been made # Diff.feature:25
    Given I have a repository                                                        # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                           # DefaultStepDefinitions.I_stage_6_features()
    When I run the command "diff"                                                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "No differences found"                          # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Show diff between working tree and index, for a single unmodified tree': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Show diff between working tree and index, for a single modified tree # Diff.feature:31
    Given I have a repository                                                    # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                       # DefaultStepDefinitions.I_stage_6_features()
    And I modify a feature                                                       # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "diff --path Points"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Points/Points.1"                           # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "[1.0,1.0] (1.0,2.0)"                        # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "1000"                                       # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Show diff using too many commit refspecs': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Show diff between working tree and index, for a single unmodified tree # Diff.feature:40
    Given I have a repository                                                      # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                         # DefaultStepDefinitions.I_stage_6_features()
    And I modify a feature                                                         # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "diff --path Lines"                                     # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "No differences found"                        # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Show diff using a wrong commit refspec': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Show diff using too many commit refspecs           # Diff.feature:47
    Given I have a repository                                  # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                     # DefaultStepDefinitions.I_stage_6_features()
    And I modify a feature                                     # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "diff commit1 commit2 commit3"      # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Commit list is too long" # 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.cli.test.functional.DefaultStepDefinitions - 'Show diff between working tree and index, for a single modified tree, showing only summary': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Show diff using a wrong commit refspec                                    # Diff.feature:55
    Given I have a repository                                                         # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                            # DefaultStepDefinitions.I_stage_6_features()
    And I modify a feature                                                            # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "diff wrongcommit"                                         # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Refspec wrongcommit does not resolve to a tree" # 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.cli.test.functional.DefaultStepDefinitions - 'Show diff between working tree and index, for a single feature whose feature type has changed': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Show diff between working tree and index, for a single modified tree, showing only summary # Diff.feature:63
    Given I have a repository                                                                          # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                                             # DefaultStepDefinitions.I_stage_6_features()
    And I modify a feature                                                                             # DefaultStepDefinitions.I_modify_a_feature()
    When I run the command "diff --path Points --summary"                                              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Points/Points.1"                                                 # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "POINT (1 1)"                                                  # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should not contain "1000"                                                         # DefaultStepDefinitions.the_response_should_not_contain(String)

  Scenario: Show diff between working tree and index, for a single feature whose feature type has changed # Diff.feature:72
    Given I have a repository                                                                             # DefaultStepDefinitions.I_have_a_repository()
    And I stage 6 features                                                                                # DefaultStepDefinitions.I_stage_6_features()
    And I a featuretype is modified                                                                       # DefaultStepDefinitions.I_modify_a_feature_type()
    When I run the command "diff --path Points/Points.1"                                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "extra: [MISSING] -> "                                               # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "ExtraString"                                                         # DefaultStepDefinitions.the_response_should_contain(String)
Feature: "init" command
    In order to start versioning my spatial datasets
    As a repository Owner
    I want to create a new repository on a directory of my choice
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Create repository in the current empty directory': Using URIBuilder DefaultTestRepoURIBuilder
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Create repository specifying initial configuration': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Create repository in the current empty directory                             # Init.feature:6
    Given I am in an empty directory                                                     # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "init"                                                        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "Initialized empty Geogig repository in ${currentdir}/.geogig" # DefaultStepDefinitions.it_should_answer_exactly(String)
    And the repository shall exist                                                       # DefaultStepDefinitions.the_repository_shall_exist()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Create repository specifying the target directory': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Create repository specifying initial configuration # Init.feature:12
    Given I am in an empty directory                           # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "init --config foo.bar=baz"         # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the repository shall exist                            # DefaultStepDefinitions.the_repository_shall_exist()
    When I run the command "config foo.bar"                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "baz"                                # DefaultStepDefinitions.it_should_answer_exactly(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to init a repository when already inside a repository': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Create repository specifying the target directory                                  # Init.feature:19
    Given I am in an empty directory                                                           # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "init roads"                                                        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "Initialized empty Geogig repository in ${currentdir}/roads/.geogig" # DefaultStepDefinitions.it_should_answer_exactly(String)
    And if I change to the respository subdirectory "roads"                                    # DefaultStepDefinitions.if_I_change_to_the_respository_subdirectory(String)
    Then the repository shall exist                                                            # DefaultStepDefinitions.the_repository_shall_exist()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to init a repository from inside a repository subdirectory': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to init a repository when already inside a repository              # Init.feature:26
    Given I have a repository                                                      # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "init"                                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should start with "Reinitialized existing Geogig repository" # DefaultStepDefinitions.the_response_should_start_with(String)
    And the repository shall exist                                                 # DefaultStepDefinitions.the_repository_shall_exist()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Init specifying repo URI': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to init a repository from inside a repository subdirectory            # Init.feature:32
    Given I have a repository                                                         # DefaultStepDefinitions.I_have_a_repository()
    And I am inside a repository subdirectory "topp/shapes"                           # DefaultStepDefinitions.I_am_inside_a_repository_subdirectory(String)
    When I run the command "init"                                                     # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should start with "Reinitialized existing Geogig repository in" # DefaultStepDefinitions.the_response_should_start_with(String)
    And the repository shall exist                                                    # DefaultStepDefinitions.the_repository_shall_exist()

  Scenario: Init specifying repo URI                # Init.feature:40
    Given I am in an empty directory                # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "init ${repoURI}"        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the repository at "${repoURI}" shall exist # DefaultStepDefinitions.the_repository_at_shall_exist(String)
Feature: "log" command
    In order to know the history of commits on a repository
    As a Geogig User
    I want to log them to the console
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of a repository with a single commit.': Using URIBuilder DefaultTestRepoURIBuilder
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of a repository with several commits.': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of a repository with a single commit. # Log.feature:5
    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 TestCommit"                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"             # DefaultStepDefinitions.the_response_should_contain(String)
    When I run the command "log"                                    # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Subject: TestCommit"          # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of the commits that have changed the points feature': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of a repository with several commits. # Log.feature:15
    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 "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)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of the commits that have changed the lines feature': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of the commits that have changed the points feature # Log.feature:24
    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 "log --path Points"                                     # 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: Commit4"                            # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of the commits that have changed the points and lines features': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of the commits that have changed the lines feature # Log.feature:32
    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 "log --path Lines"                                     # DefaultStepDefinitions.I_run_the_command_X(String)
    Then 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)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show only the last two commits.': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of the commits that have changed the points and lines features # Log.feature:39
    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 "log --path Points Lines"                                          # 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)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the log, skipping the last 2 commits': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show only the last two commits.          # Log.feature:48
    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 "log -n 2"                        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should not contain "Subject: Commit1" # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should not contain "Subject: Commit2"  # DefaultStepDefinitions.the_response_should_not_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)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show the last 2 commits before the most recent': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the log, skipping the last 2 commits # Log.feature:57
    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 "log --skip 2"                     # 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 not contain "Subject: Commit3"   # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should not contain "Subject: Commit4"   # DefaultStepDefinitions.the_response_should_not_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log from an empty directory': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show the last 2 commits before the most recent # Log.feature:66
    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 "log -n 2 --skip 1"                     # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should not contain "Subject: Commit1"       # DefaultStepDefinitions.the_response_should_not_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 not contain "Subject: Commit4"        # DefaultStepDefinitions.the_response_should_not_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of all branches': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log from an empty directory                # Log.feature:75
    Given I am in an empty directory                                 # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "log"                                     # 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 show a log of a single branch': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of all branches  # Log.feature:81
    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 "log --all"         # 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 "Commit5"  # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of all branches specifying the 'until' commit': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of a single branch  # Log.feature:91
    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 "log --branch branch1" # 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 not contain "Commit4" # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should not contain "Commit5" # DefaultStepDefinitions.the_response_should_not_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of all branches with decoration': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of all branches specifying the 'until' commit                    # Log.feature:101
    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 "log --all HEAD..HEAD~1"                                            # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Cannot specify 'until' commit when listing all branches" # 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.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of a repository with a single commit.': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of all branches with decoration # Log.feature:108
    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 "log --all --decoration"           # 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 "Commit5"                 # DefaultStepDefinitions.the_response_should_contain(String)
    Then the response should contain "HEAD"                   # DefaultStepDefinitions.the_response_should_contain(String)
    Then the response should contain "master"                 # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of a repository with a single commit and decoration': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of a repository with a single commit. # Log.feature:120
    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 TestCommit"                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"             # DefaultStepDefinitions.the_response_should_contain(String)
    When I run the command "log --oneline"                          # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain 1 lines                        # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    And the response should contain "TestCommit"                    # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of a repository showing only names of affected elements': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of a repository with a single commit and decoration # Log.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 "lines1"                                                    # DefaultStepDefinitions.I_have_staged(String)
    When I run the command "commit -m TestCommit"                                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "3 features added"                           # DefaultStepDefinitions.the_response_should_contain(String)
    When I run the command "log --oneline --decoration"                           # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain 1 lines                                      # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    And the response should contain "(HEAD, refs/heads/master) TestCommit"        # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to show a log of a repository showing full descriptions of affected elements': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to show a log of a repository showing only names of affected elements # Log.feature:142
    Given I have a repository                                                         # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                       # DefaultStepDefinitions.I_have_staged(String)
    And I run the command "commit -m TestCommit"                                      # DefaultStepDefinitions.I_run_the_command_X(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 run the command "commit -m TestCommit"                                      # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "log --names-only"                                         # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain 13 lines                                         # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
    And the response should contain "Points.2"                                        # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Points.3"                                        # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Lines.1"                                         # DefaultStepDefinitions.the_response_should_contain(String)

  Scenario: Try to show a log of a repository showing full descriptions of affected elements # Log.feature:156
    Given I have a repository                                                                # DefaultStepDefinitions.I_have_a_repository()
    And I have staged "points1"                                                              # DefaultStepDefinitions.I_have_staged(String)
    And I run the command "commit -m TestCommit"                                             # DefaultStepDefinitions.I_run_the_command_X(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 run the command "commit -m TestCommit"                                             # DefaultStepDefinitions.I_run_the_command_X(String)
    When I run the command "log --summary"                                                   # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain 24 lines                                                # DefaultStepDefinitions.the_response_should_contain_x_lines(int)
Feature: "merge" command
    In order to combine two or more geogig histories into one
    As a Geogig User
    I want to merge one or more commit histories into my current branch
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to merge one branch to a parent branch': Using URIBuilder DefaultTestRepoURIBuilder
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to merge the same branch twice': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge one branch to a parent branch     # Merge.feature:6
    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 "merge branch1 -m MergeMessage" # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "2 features added"    # DefaultStepDefinitions.the_response_should_contain(String)
    When I run the command "log --first-parent"            # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "MergeMessage"        # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Commit5"              # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "Commit1"              # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should not contain "Commit4"          # 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 not contain "Commit2"          # DefaultStepDefinitions.the_response_should_not_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to merge without specifying any commits': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge the same branch twice                             # Merge.feature:19
    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 "merge branch1 -m MergeMessage"                 # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "2 features added"                    # DefaultStepDefinitions.the_response_should_contain(String)
    When I run the command "merge branch1 -m MergeMessage2"                # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "The branch has already been merged." # 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.cli.test.functional.DefaultStepDefinitions - 'Try to merge a nonexistent branch': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge without specifying any commits   # Merge.feature:28
    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 "merge -m MergeMessage"        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "No commits provided to merge." # 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 merge from an empty directory': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge a nonexistent branch              # Merge.feature:35
    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 "merge nonexistent"             # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should start with "Commit not found" # 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 merge two conflicting branches': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge from an empty directory                     # Merge.feature:42
    Given I am in an empty directory                                 # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "merge 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()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to perform an octopus merge with conflicts': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge two conflicting branches                                  # Merge.feature:48
    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 "merge branch1"                                         # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "CONFLICT: Merge 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()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to perform an octopus merge': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to perform an octopus merge with conflicts                                     # Merge.feature:55
    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 "merge branch1 branch2"                                             # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Cannot merge more than two commits when conflicts exist" # 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.cli.test.functional.DefaultStepDefinitions - 'Try to merge two conflicting branches using --ours strategy': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to perform an octopus merge                            # Merge.feature:62
    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 "merge branch1 branch2"                     # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Merge branch refs/heads/branch1" # DefaultStepDefinitions.the_response_should_contain(String)
    Then the response should contain "Merge branch refs/heads/branch2" # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to merge two conflicting branches using --ours and --theirs strategy': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge two conflicting branches using --ours strategy # Merge.feature:69
    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 "merge branch1 --ours"                       # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Merge branch refs/heads/branch1"  # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to merge two conflicting branches using --theirs strategy': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge two conflicting branches using --ours and --theirs strategy # Merge.feature:75
    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 "merge branch1 --ours --theirs"                           # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Cannot use both --ours and --theirs"           # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to abort a conflicted merge': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to merge two conflicting branches using --theirs strategy # Merge.feature:81
    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 "merge branch1 --theirs"                       # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Merge branch refs/heads/branch1"    # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to abort when there is no conflict': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to abort a conflicted merge                       # Merge.feature:87
    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 "merge branch1 --abort"                # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Merge aborted successfully" # DefaultStepDefinitions.the_response_should_contain(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)

  Scenario: Try to abort when there is no conflict                # Merge.feature:95
    Given I have a repository                                     # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "merge --abort"                        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "There is no merge to 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: "rebase" command
    In order to linearize the geogig history
    As a Geogig User
    I want to rebase my local commits onto an existing branch
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase one branch to a parent branch': Using URIBuilder DefaultTestRepoURIBuilder
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to rebase one branch to a parent branch': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase one branch to a parent branch # Rebase.feature:6
    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"      # 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 not contain "Commit4"       # DefaultStepDefinitions.the_response_should_not_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 graft a branch onto another branch': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to rebase one branch to a parent branch                   # Rebase.feature:17
    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 --squash squashmessage" # 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 not contain "Commit4"                         # DefaultStepDefinitions.the_response_should_not_contain(String)
    And the response should contain "Commit5"                             # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "squashmessage"                       # DefaultStepDefinitions.the_response_should_contain(String)
[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:29
    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:40
    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:47
    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:54
    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:61
    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()
[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:67
    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)
[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:80
    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)
[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:93
    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)
[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:102
    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()
[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:108
    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()

  Scenario: Try to rebase --abort when no conflict exist # Rebase.feature:114
    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: "remote" command
    In order to track changes from other repositories
    As a Geogig User
    I want to add and remove remotes for the current repository
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to add and list remote from an empty directory': Using URIBuilder DefaultTestRepoURIBuilder
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to add and list a remote to the current repository': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to add and list remote from an empty directory       # Remote.feature:6
    Given I am in an empty directory                                 # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "remote add myremote http://myremote.com" # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "Not in a geogig repository"    # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to add several remotes and list them': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to add and list a remote to the current repository   # Remote.feature:11
    Given I have a repository                                        # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "remote add myremote http://myremote.com" # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "remote list"                              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "myremote"                                 # DefaultStepDefinitions.it_should_answer_exactly(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to add a remote that already exists': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to add several remotes and list them                  # Remote.feature:17
    Given I have a repository                                         # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "remote add myremote http://myremote.com"  # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "remote add myremote2 http://myremote2.org" # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "remote list"                               # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "myremote"                       # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "myremote2"                       # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to add a remote and list with verbose mode': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to add a remote that already exists                                   # Remote.feature:25
    Given I have a repository                                                         # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "remote add myremote http://myremote.com"                  # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "remote add myremote http://myremote2.org"                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "Could not add, a remote called 'myremote' already exists." # 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 add a remote that tracks a specific branch': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to add a remote and list with verbose mode                  # Remote.feature:32
    Given I have a repository                                               # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "remote add myremote http://myremote.com"        # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "remote list -v"                                  # DefaultStepDefinitions.I_run_the_command_X(String)
    Then the response should contain "myremote http://myremote.com (fetch)" # DefaultStepDefinitions.the_response_should_contain(String)
    And the response should contain "myremote http://myremote.com (push)"   # DefaultStepDefinitions.the_response_should_contain(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to add a remote that tracks all branches': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to add a remote that tracks a specific branch                  # Remote.feature:39
    Given I have a repository                                                  # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "remote add -t branch myremote http://myremote.com" # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "config remote.myremote.fetch"                       # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "+refs/heads/branch:refs/remotes/myremote/branch"    # DefaultStepDefinitions.it_should_answer_exactly(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to add, remove, and list a remote': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to add a remote that tracks all branches             # Remote.feature:45
    Given I have a repository                                        # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "remote add myremote http://myremote.com" # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "config remote.myremote.fetch"             # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "+refs/heads/*:refs/remotes/myremote/*"    # DefaultStepDefinitions.it_should_answer_exactly(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to remove a remote from an empty repository': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to add, remove, and list a remote                    # Remote.feature:51
    Given I have a repository                                        # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "remote add myremote http://myremote.com" # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "remote rm myremote"                       # DefaultStepDefinitions.I_run_the_command_X(String)
    And I run the command "remote list"                              # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer ""                                         # DefaultStepDefinitions.it_should_answer_exactly(String)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to remove a remote that doesn't exist': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to remove a remote from an empty repository       # Remote.feature:58
    Given I am in an empty directory                              # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "remote rm myremote"                   # 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()
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to list remotes from an empty repository': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Try to remove a remote that doesn't exist                  # Remote.feature:64
    Given I have a repository                                          # DefaultStepDefinitions.I_have_a_repository()
    When I run the command "remote rm myremote"                        # DefaultStepDefinitions.I_run_the_command_X(String)
    Then it should answer "Could not find a remote called 'myremote'." # DefaultStepDefinitions.it_should_answer_exactly(String)
    And it should exit with non-zero exit code                         # DefaultStepDefinitions.it_should_exit_with_non_zero_exit_code()

  Scenario: Try to list remotes from an empty repository          # Remote.feature:70
    Given I am in an empty directory                              # DefaultStepDefinitions.I_am_in_an_empty_directory()
    When I run the command "remote list"                          # 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()
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
[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)
[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)
[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)
[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()
[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()

  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
[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"                                    # 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)
[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)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Try to reset from an empty directory': 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)
[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:48
    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:54
    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()
[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:60
    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()
[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:72
    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)
[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:87
    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)
[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:101
    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)
[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:116
    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 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)

  Scenario: Try to do a reset with a mode and paths                              # Reset.feature:130
    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()
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
[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()
[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.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)
[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.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)
[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.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.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)

  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
[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)
[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:17
    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)
[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:25
    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)
[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:36
    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)
[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:47
    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)
[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:57
    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)

  Scenario: Try to show the description of a 2 features with the --raw modifier   # Show.feature:69
    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)
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)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Squash commits in wrong order': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Squash commits with message                     # Squash.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 "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)
[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:21
    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)

  Scenario: Squash commits with only one commit provided                    # Squash.feature:27
    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()
[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)
[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)
[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)
[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)
[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)
[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)
[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)
[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)
[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)
[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)
[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()

  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
[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)
[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)
[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:19
    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)
[main] INFO org.locationtech.geogig.cli.test.functional.DefaultStepDefinitions - 'Delete an inexistent tag': Using URIBuilder DefaultTestRepoURIBuilder

  Scenario: Delete a tag                                 # Tag.feature:25
    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)
[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:32
    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()
[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:40
    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()
[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:47
    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()
[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: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 "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()

  Scenario: Try to create a tag with a wrong commit ref          # Tag.feature:61
    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()

244 Scenarios (244 passed)
1606 Steps (1606 passed)
1m39.981s

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

Results :

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

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