code: def check_target_ssh_since(use_ssh, origin, src_path, target_path):
      _mk_submodule_annex(origin, "test-annex.dat", "whatever")
  
      if use_ssh:
          sshurl = "ssh://datalad-test" + target_path
      else:
          sshurl = target_path
      # prepare src
      source = install(src_path, source=origin, recursive=True)
      eq_(len(source.subdatasets()), 2)
      # get a new subdataset and make sure it is committed in the super
      source.create("brandnew")
      eq_(len(source.subdatasets()), 3)
      assert_repo_status(source.path)
  
      # and now we create a sibling for the new subdataset only
      assert_create_sshwebserver(
          name="dominique_carrera",
          dataset=source,
          sshurl=sshurl,
          recursive=True,
          since="HEAD~1",
      )
      # there is one thing in the target directory only, and that is the
      # remote repo of the newly added subdataset
  
      target = Dataset(target_path)
      ok_(
          not target.is_installed()
      )  # since we didn't create it due to since
      eq_(["brandnew"], os.listdir(target_path))
  
      # now test functionality if we add a subdataset with a subdataset
      brandnew2 = source.create("brandnew2")
      brandnewsub = brandnew2.create("sub")
      brandnewsubsub = brandnewsub.create("sub")
      # and now we create a sibling for the new subdataset only
      assert_create_sshwebserver(
          name="dominique_carrera",
          dataset=source,
          sshurl=sshurl,
          recursive=True,
          existing="skip",
      )
      # verify that it created the immediate subdataset
      ok_(Dataset(_path_(target_path, "brandnew2")).is_installed())
      # but not the subs since they were not saved, thus even push would not operate
      # on them yet, so no reason for us to create them until subdatasets are saved
      ok_(
          not Dataset(
              _path_(target_path, "brandnew2/sub")
          ).is_installed()
      )
  
      source.save(recursive=True)
  
      # and if repeated now -- will create those sub/sub
      assert_create_sshwebserver(
          name="dominique_carrera",
          dataset=source,
          sshurl=sshurl,
          recursive=True,
          existing="skip",
      )
      # verify that it created the immediate subdataset
      ok_(Dataset(_path_(target_path, "brandnew2/sub")).is_installed())
      ok_(
          Dataset(
              _path_(target_path, "brandnew2/sub/sub")
          ).is_installed()
      )
  
      # now we will try with --since while creating even deeper nested one, and ensuring
      # it is created -- see https://github.com/datalad/datalad/issues/6596
      brandnewsubsub.create("sub")
      source.save(recursive=True)
      # and now we create a sibling for the new subdataset only
      assert_create_sshwebserver(
          name="dominique_carrera",
          dataset=source,
          sshurl=sshurl,
          recursive=True,
          existing="skip",
          since=f"{DEFAULT_REMOTE}/{DEFAULT_BRANCH}",
      )
      # verify that it created the sub and sub/sub
      ok_(
          Dataset(
              _path_(target_path, "brandnew2/sub/sub/sub")
          ).is_installed()
      )
  
      # we installed without web ui - no hooks should be created/enabled
      assert_postupdate_hooks(
          _path_(target_path, "brandnew"), installed=False
      )
  
imports: import logging
  import os
  import stat
  import sys
  from os import chmod
  from os.path import basename, exists
  from os.path import join
  import pytest
  from datalad.api import create_sibling, install, push
  from datalad.cmd import StdOutErrCapture
  from datalad.cmd import WitlessRunner
  from datalad.distribution.create_sibling import _RunnerAdapter
  from datalad.support.annexrepo import AnnexRepo
  from datalad.support.exceptions import CommandError, InsufficientArgumentsError
  from datalad.support.gitrepo import GitRepo
  from datalad.support.network import urlquote
  from datalad.tests.utils_testdatasets import _mk_submodule_annex
  from datalad.tests.utils_pytest import DEFAULT_BRANCH, DEFAULT_REMOTE, SkipTest, assert_dict_equal, assert_false, assert_in, assert_in_results, assert_no_errors_logged, assert_not_equal, assert_not_in, assert_raises, assert_repo_status, assert_result_count, assert_status, create_tree, eq_, get_mtimes_and_digests, get_ssh_port, known_failure_windows, ok_, ok_endswith, ok_file_has_content, ok_file_under_git, skip_if_on_windows, skip_if_root, skip_ssh, slow, swallow_logs, with_tempfile, with_testsui
  from datalad.utils import Path, _path_, chpwd, on_windows
  from ..dataset import Dataset
label_desc: Use image node_id 7 for calling a global function with example usage: check_target_ssh_since(use_ssh, origin, src_path, target_path) without return types