@Override
  public void checkout(@NotNull Target source,
                       @NotNull File destination,
                       @Nullable Revision revision,
                       @Nullable Depth depth,
                       boolean ignoreExternals,
                       boolean force,
                       @NotNull WorkingCopyFormat format,
                       @Nullable ProgressTracker handler) throws VcsException {
    validateFormat(format, getSupportedFormats());

    List<String> parameters = new ArrayList<>();

    CommandUtil.put(parameters, source);
    CommandUtil.put(parameters, destination, false);
    CommandUtil.put(parameters, depth);
    CommandUtil.put(parameters, revision);
    CommandUtil.put(parameters, ignoreExternals, "--ignore-externals");
    CommandUtil.put(parameters, force, "--force"); // corresponds to "allowUnversionedObstructions" in SVNKit

    run(source, destination, handler, parameters);
  }
@Override
  public void checkout(@NotNull Target source,
                       @NotNull File destination,
                       @Nullable Revision revision,
                       @Nullable Depth depth,
                       boolean ignoreExternals,
                       boolean force,
                       @NotNull WorkingCopyFormat format,
                       @Nullable ProgressTracker handler)