在mingw中解析路径因数据版本控制而失败

时间:2018-10-18 10:04:46

标签: windows mingw dvc

我在Windows 7上使用mingw32关注tutorialData Version Control

当我尝试使用run时出现非常奇怪的错误:

$ dvc run -v echo "hello"
Debug: updater is not old enough to check for updates
Debug: PRAGMA user_version;
Debug: fetched: [(2,)]
Debug: CREATE TABLE IF NOT EXISTS state (inode INTEGER PRIMARY KEY, mtime TEXT NOT NULL, md5 TEXT NOT NULL, timestamp TEXT NOT NULL)
Debug: CREATE TABLE IF NOT EXISTS state_info (count INTEGER)
Debug: CREATE TABLE IF NOT EXISTS link_state (path TEXT PRIMARY KEY, inode INTEGER NOT NULL, mtime TEXT NOT NULL)
Debug: INSERT OR IGNORE INTO state_info (count) SELECT 0 WHERE NOT EXISTS (SELECT * FROM state_info)
Debug: PRAGMA user_version = 2;
Running command:
        echo hello
/c: /c: Is a directory
Debug: SELECT count from state_info WHERE rowid=1
Debug: fetched: [(1,)]
Debug: UPDATE state_info SET count = 1 WHERE rowid = 1
Error: Traceback (most recent call last):
  File "dvc\command\run.py", line 18, in run
  File "dvc\project.py", line 265, in run
  File "dvc\stage.py", line 435, in run
StageCmdFailedError: Stage 'Dvcfile' cmd echo hello failed

Error: Failed to run command: Stage 'Dvcfile' cmd echo hello failed

问题:

/c: /c: Is a directory来自哪里?我该如何解决?

我的发现

  1. 我以为这是解析回显的路径,但是ech是内置函数。

    $ type echo
    echo is a shell builtin
    

    我也尝试过使用exitcd,但是遇到了同样的错误。

  2. 不使用dvc调用命令即可正常工作。

  3. 带有dvc标志的
  4. --no-exec可以正常工作,但是以后再用repro执行时,也会出现相同的错误。

1 个答案:

答案 0 :(得分:4)

我是dvc开发人员之一。类似的错误已影响在cygwin上运行的dvc。我们已经在0.20.0中发布了针对此问题的修复程序。请升级。