diff --git a/dvc/command/add.py b/dvc/command/add.py index cbfd1ec96..c49a81207 100644 --- a/dvc/command/add.py +++ b/dvc/command/add.py @@ -40,9 +40,12 @@ class CmdAdd(CmdBase): for data_item in targets: Logger.debug('Creating state file for {}'.format(data_item.data.relative)) - state_file = StateFile(fname=data_item.data.relative + StateFile.STATE_FILE_SUFFIX, + fname = os.path.basename(data_item.data.relative + StateFile.STATE_FILE_SUFFIX) + out = StateFile.parse_deps_state(self.settings, [data_item.data.relative], + currdir=os.path.curdir) + state_file = StateFile(fname=fname, cmd=None, - out=StateFile.parse_deps_state(self.settings, [data_item.data.relative], currdir=data_item.data.dirname), + out=out, out_git=[], deps=[], locked=True) diff --git a/dvc/command/run.py b/dvc/command/run.py index 4dc0ed4db..296344753 100644 --- a/dvc/command/run.py +++ b/dvc/command/run.py @@ -41,7 +41,7 @@ class CmdRun(CmdBase): if self.parsed_args.out or self.parsed_args.out_git: result = self.parsed_args.out[0] if self.parsed_args.out else self.parsed_args.out_git[0] - result += StateFile.STATE_FILE_SUFFIX + result = os.path.basename(result+StateFile.STATE_FILE_SUFFIX) Logger.info(u'Using \'{}\' as a stage file'.format(result)) return result diff --git a/dvc/state_file.py b/dvc/state_file.py index e836524c6..4e2af5ae6 100644 --- a/dvc/state_file.py +++ b/dvc/state_file.py @@ -41,7 +41,7 @@ class StateFile(StateFileBase): out_git=None, deps=None, locked=None, - cwd=None): + cwd=''): super(StateFile, self).__init__() self.cmd = cmd