cherry-pick: add t3512 for submodule updates

Test that the cherry-pick command updates the work tree as expected (for
submodule changes which don't result in conflicts).

Set KNOWN_FAILURE_NOFF_MERGE_ATTEMPTS_TO_MERGE_REMOVED_SUBMODULE_FILES
and KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR to
document that pull has the same --no-ff known failure merge has.

Add the KNOWN_FAILURE_CHERRY_PICK_SEES_EMPTY_COMMIT switch to expect the
known failure that while cherry picking just a SHA-1 update for an ignored
submodule the commit incorrectly fails with "The previous cherry-pick is
now empty, possibly due to conflict resolution.".

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
!!! WIP !!! checkout-index: add t2025 for submodule updates

TODO: fix or expect failing tests

Test that the checkout-index command updates the work tree as expected
(for submodule changes which don't result in conflicts) with or without
the '-f' flag.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
am: add t4255 for submodule updates

Test that the am command updates the work tree as expected (for submodule
changes which don't result in conflicts).

Add the KNOWN_FAILURE_NOFF_MERGE_ATTEMPTS_TO_MERGE_REMOVED_SUBMODULE_FILES
switch to expect the known failure that --no-ff merges attempt to merge
the new files in the former submodule directory with those of the removed
submodule.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
!!! WIP !!! stash: add t3906 for submodule updates

TODO: properly set up work tree in test helper functions

Test that the stash apply command updates the work tree as expected for
changes which don't result in conflicts no matter if submodule changes are
staged or not.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
!!! WIP !!! reminder of what is still left to do ...