2016-11-23 63 views
2

签子模块的Makefile现在这就是我:如何子目录

data: 

    git checkout master -C $(DATA_DIR) 
    git pull -C $(DATA_DIR) 

子模块位于DATA_DIR。

与我有什么问题是当我做“数据”,我得到以下错误:“错误:未知开关'C'”。我认为这是因为git假定-C是一个自己的命令而不是Makefile的命令,因为在它列出了我可以在git中使用的所有命令之后。

我的问题是:我如何签出位于DATA_DIR中的子模块。

谢谢你花时间阅读我的问题。

+0

而不是记住把'每个混帐命令-C',它可能是简单的设置'GIT_DIR'环境变量,通常使用git。 – Schwern

回答

2

尝试,而不是

git -C $(DATA_DIR) pull 

-C适用于git command itself,还不如拉手的选择。仿佛混帐在<path>而不是当前工作目录开始

-C <path> 

运行。

+0

是的,那正是我想要的。感谢您花时间回答我的问题! –