OPT_END()
};
- /* NEEDSWORK: once we no longer spawn anything, remove this */
- setenv(GIT_DIR_ENVIRONMENT, absolute_path(get_git_dir()), 1);
- setenv(GIT_WORK_TREE_ENVIRONMENT, absolute_path(get_git_work_tree()), 1);
-
git_config(difftool_config, NULL);
symlinks = has_symlinks;
if (tool_help)
return print_tool_help();
+ /* NEEDSWORK: once we no longer spawn anything, remove this */
+ setenv(GIT_DIR_ENVIRONMENT, absolute_path(get_git_dir()), 1);
+ setenv(GIT_WORK_TREE_ENVIRONMENT, absolute_path(get_git_work_tree()), 1);
+
if (use_gui_tool && diff_gui_tool && *diff_gui_tool)
setenv("GIT_DIFF_TOOL", diff_gui_tool, 1);
else if (difftool_cmd) {
test "$prompt" = "Launch 'test-tool' [Y/n]? branch"
}
+test_expect_success 'basic usage requires no repo' '
+ lines=$(git difftool -h | grep ^usage: | wc -l) &&
+ test "$lines" -eq 1 &&
+ # create a ceiling directory to prevent Git from finding a repo
+ mkdir -p not/repo &&
+ ceiling="$PWD/not" &&
+ lines=$(cd not/repo &&
+ GIT_CEILING_DIRECTORIES="$ceiling" git difftool -h |
+ grep ^usage: | wc -l) &&
+ test "$lines" -eq 1 &&
+ rmdir -p not/repo
+'
+
# Create a file on master and change it on branch
test_expect_success 'setup' '
echo master >file &&