Skip to content

Commit d9b2e67

Browse files
committed
Revert "Enable forcing exp apply (unsaved files in the workspace)"
This reverts commit 3661b89.
1 parent 4a0d56a commit d9b2e67

File tree

2 files changed

+14
-19
lines changed

2 files changed

+14
-19
lines changed

dvc/commands/experiments/apply.py

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,21 @@
44
from dvc.cli import completion
55
from dvc.cli.command import CmdBase
66
from dvc.cli.utils import append_doc_link
7+
from dvc.ui import ui
78

89
logger = logging.getLogger(__name__)
910

1011

1112
class CmdExperimentsApply(CmdBase):
1213
def run(self):
13-
self.repo.experiments.apply(self.args.experiment, force=self.args.force)
14+
if not self.args.force:
15+
ui.write(
16+
"The --no-force option is deprecated and will be removed in a future"
17+
" DVC release. To revert the result of 'exp apply', run:\n"
18+
"\n\tgit reset --hard\n"
19+
"\tgit stash apply refs/exps/apply/stash\n"
20+
)
21+
self.repo.experiments.apply(self.args.experiment)
1422

1523
return 0
1624

@@ -25,11 +33,10 @@ def add_parser(experiments_subparsers, parent_parser):
2533
formatter_class=argparse.RawDescriptionHelpFormatter,
2634
)
2735
experiments_apply_parser.add_argument(
28-
"-f",
29-
"--force",
30-
action="store_true",
31-
default=False,
32-
help="Do not prompt when removing working directory files.",
36+
"--no-force",
37+
action="store_false",
38+
dest="force",
39+
help="Fail if this command would overwrite conflicting changes.",
3340
)
3441
experiments_apply_parser.add_argument(
3542
"experiment", help="Experiment to be applied."

tests/unit/command/test_experiments.py

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -27,19 +27,7 @@ def test_experiments_apply(dvc, scm, mocker):
2727

2828
assert cmd.run() == 0
2929

30-
m.assert_called_once_with(cmd.repo, "exp_rev", force=False)
31-
32-
33-
def test_experiments_apply_force(dvc, scm, mocker):
34-
cli_args = parse_args(["experiments", "apply", "exp_rev", "--force"])
35-
assert cli_args.func == CmdExperimentsApply
36-
37-
cmd = cli_args.func(cli_args)
38-
m = mocker.patch("dvc.repo.experiments.apply.apply", return_value={})
39-
40-
assert cmd.run() == 0
41-
42-
m.assert_called_once_with(cmd.repo, "exp_rev", force=True)
30+
m.assert_called_once_with(cmd.repo, "exp_rev")
4331

4432

4533
def test_experiments_diff(dvc, scm, mocker):

0 commit comments

Comments
 (0)