      """
      if isinstance(command, str):
          command = split_command(command)
      try:
          status = subprocess.call(command, env=os.environ.copy())
      except FileNotFoundError:
          raise FileNotFoundError(
              Errors.E970.format(str_command=" ".join(command), tool=command[0])
          ) from None
      if status != 0:
 
</s> remove     if status != 0:
        sys.exit(status)
 </s> add     if ret.returncode != 0:
        sys.exit(ret.returncode)
    return ret </s> remove def run_command(command: Union[str, List[str]]) -> None:
 </s> add def run_command(command: Union[str, List[str]], *, capture=False, stdin=None) -> None: </s> remove         run_command(cmd)
        with (tmp_dir / ".git" / "info" / "sparse-checkout").open("w") as f:
            f.write(subpath)
        run_command(["git", "-C", str(tmp_dir), "fetch"])
        run_command(["git", "-C", str(tmp_dir), "checkout"])
 </s> add         run_command(cmd, capture=True)
        # Now we need to find the missing filenames for the subpath we want.
        # Looking for this 'rev-list' command in the git --help? Hah.
        cmd = f"git -C {tmp_dir} rev-list --objects --all --missing=print -- {subpath}"
        ret = run_command(cmd, capture=True)
        missings = "\n".join([x[1:] for x in ret.stdout.split() if x.startswith("?")])
        # Now pass those missings into another bit of git internals
        run_command(
            f"git -C {tmp_dir} fetch-pack --stdin {repo}", capture=True, stdin=missings
        )
        # And finally, we can checkout our subpath
        run_command(f"git -C {tmp_dir} checkout {branch} {subpath}") </s> remove             f"git clone {repo} {tmp_dir} --no-checkout "
            "--depth 1 --config core.sparseCheckout=true"
 </s> add             f"git clone {repo} {tmp_dir} --no-checkout --depth 1 "
            "--filter=blob:none"  # <-- The key bit
        ret = subprocess.run(
            command,
            env=os.environ.copy(),
            capture_output=capture,
            input=stdin,
            text=True,
            check=True,
        )
      """
      if isinstance(command, str):
          command = split_command(command)
      try:
        ret = subprocess.run(
            command,
            env=os.environ.copy(),
            capture_output=capture,
            input=stdin,
            text=True,
            check=True,
        )
      except FileNotFoundError:
          raise FileNotFoundError(
              Errors.E970.format(str_command=" ".join(command), tool=command[0])
          ) from None
      if status != 0:
keep keep keep keep replace keep keep keep keep keep
 Fix the git "sparse checkout" functionality (#5973)

* Fix the git sparse checkout functionality

* Format 
spacy/util.py