Jens Lehmann wrote: > I think that makes a lot of sense. I think you would not only end up > changing the indentation of many subshells (not only those that I > added), you will also have to deal with tests using spaces instead of > tabs for indentation. But these issues have to be addressed anyway ... Hmm, it seems there are quite a lot of strange uses of subshells in tests. I have only started the task you describe. But here are a couple of patches of that kind. Patch 1 re-indents the subshells you introduced. I have not checked that those subshells are all semantically neutral (and in fact some seem not to be, but I think for the better); in fact, the main goal of that patch is to help other people review yours. Patch 2 teaches the fsck tests to use test_when_finished. This causes some pointless subshells to be removed, and more importantly, it fixes the cleanup to actually work, so there are no dangling objects by the end. Patch 3 adds a missing && in t2105 (.git file pointing to .git dir). The style cleanup for that file has been done locally but I do not think it's worth sending yet. Patch 4 teaches the "unwritable file" error handling tests to use test_when_finished. This causes some pointless subshells to be removed, and more importantly, it simplifies the script a lot. Patch 5 is a style cleanup for the core.repositoryversion tests (mostly to do with formatting of subshells, but there are other things). Patch 6: likewise, for the git config tests. Patch 7 is perhaps iffy. I find it easier to read printf "%s\n" some long list of lines than (echo some; echo long; echo list; echo of; echo lines) but others might disagree; anyway, this patch change the latter to the former (and adds a missing && while at it). I hope such mundane patches are not too painful to read. Jonathan Nieder (7): tests: subshell indentation stylefix t1450 (fsck): remove dangling objects t2105 (gitlink): add missing && t0004 (core): simplify error handling t1302 (core.repositoryversion): style tweaks t1303 (config): style tweaks t2016 (checkout -p): use printf for multiline y/n input t/t0004-unwritable.sh | 52 +++------- t/t1020-subdirectory.sh | 13 ++- t/t1302-repo-version.sh | 75 +++++++++----- t/t1303-wacky-config.sh | 28 +++-- t/t1450-fsck.sh | 138 ++++++++++++++---------- t/t2016-checkout-patch.sh | 43 +++++--- t/t2105-update-index-gitfile.sh | 2 +- t/t3060-ls-files-with-tree.sh | 12 +- t/t3409-rebase-preserve-merges.sh | 13 ++- t/t3903-stash.sh | 5 +- t/t4041-diff-submodule-option.sh | 7 +- t/t5510-fetch.sh | 35 ++++--- t/t6050-replace.sh | 46 +++++---- t/t7400-submodule-basic.sh | 11 +- t/t7401-submodule-summary.sh | 7 +- t/t9100-git-svn-basic.sh | 21 ++-- t/t9101-git-svn-props.sh | 33 ++++--- t/t9102-git-svn-deep-rmdir.sh | 13 ++- t/t9104-git-svn-follow-parent.sh | 56 ++++++----- t/t9105-git-svn-commit-diff.sh | 7 +- t/t9106-git-svn-commit-diff-clobber.sh | 30 +++--- t/t9107-git-svn-migrate.sh | 16 ++-- t/t9114-git-svn-dcommit-merge.sh | 7 +- t/t9115-git-svn-dcommit-funky-renames.sh | 7 +- t/t9116-git-svn-log.sh | 16 ++-- t/t9119-git-svn-info.sh | 69 ++++++++----- t/t9120-git-svn-clone-with-percent-escapes.sh | 3 +- 27 files changed, 433 insertions(+), 332 deletions(-) -- 1.7.2.3 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html