code: def test_init_fail_under_known_subdir(path=None):
      repo = GitRepo(path, create=True)
      repo.add(op.join("subds", "file_name"))
      # Should fail even if we do not commit but only add to index:
      with assert_raises(PathKnownToRepositoryError) as cme:
          GitRepo(op.join(path, "subds"), create=True)
      assert_in(
          "file_name", str(cme.value)
      )  # we provide a list of offenders
      # and after we commit - the same story
      repo.commit("added file")
      with assert_raises(PathKnownToRepositoryError) as cme:
          GitRepo(op.join(path, "subds"), create=True)
  
      # But it would succeed if we disable the checks
      GitRepo(
          op.join(path, "subds"),
          create=True,
          create_sanity_checks=False,
      )
  
imports: import logging
  import os
  import os.path
  import sys
  import pytest
  from datalad import get_encoding_info
  from datalad.cmd import StdOutCapture, StdOutErrCapture, WitlessRunner
  from datalad.support.exceptions import CommandError, FileNotInRepositoryError, InvalidGitRepositoryError, NoSuchPathError, PathKnownToRepositoryError
  from datalad.support.external_versions import external_versions
  from datalad.support.gitrepo import GitRepo, _normalize_path, normalize_paths, to_options
  from datalad.support.sshconnector import get_connection_hash
  from datalad.tests.utils_pytest import DEFAULT_BRANCH, DEFAULT_REMOTE, SkipTest, assert_cwd_unchanged, assert_equal, assert_false, assert_in, assert_in_results, assert_is_instance, assert_not_equal, assert_not_in, assert_raises, assert_repo_status, assert_true, create_tree, eq_, get_most_obscure_supported_name, integration, neq_, ok_, skip_if_no_network, skip_if_on_windows, skip_nomultiplex_ssh, slow, swallow_logs, with_tempfile, with_tree, xfail_buggy_annex_info
  from datalad.utils import Path, chpwd, getpwd, on_windows, rmtree
label_desc: Use image node_id 7 for calling a global function with example usage: test_init_fail_under_known_subdir(path) without return types