有一个单独的目录来存储对象文件是很有用的。但是,如果目录不存在,gprbuild会发出抱怨。我使用hg进行版本控制,它不允许您跟踪空目录(AFAIK --这也适用于git ),但即使是这样,不幸的是,不得不用一个空目录来扰乱存储库。gprbuild有一个选项,--create-missing-dirs (简写为-p),它做的正是它在锡上说的话。这是非常有用的。但是,我想知道的是,是否有某种方法在.gpr文件中设置此设置。必须提醒我的用户使用-p选项进行编译,而不是只运行gprbuild project,这是令人讨厌的。不幸的是,gprguild的文档必须这样说:
默认情况下,GPRbuild检查项目文件中指定的对象、库和exec目录是否存在。开关
-p指示GPRbuild尝试创建缺少的目录。请注意,这些开关可以在主项目的package中指定,但是它们在那里是无用的,因为目录已经存在,或者项目文件的处理在Builder开关的评估之前失败,因为至少有一个缺少的目录。
当然,必须有一种方法来做我所描述的事情?
发布于 2017-10-02 10:00:09
最近版本的gprbuild (自2016年8月19日起,参见Git)支持Create_Missing_Dirs属性。
project Foo is
for Create_Missing_Dirs use "True";
...2017年的GPL有这样的情况。
发布于 2017-10-02 07:17:08
如果要提交一个空目录,很可能也不希望git/hg跟踪该目录中的文件。一种解决方案是在目录中放置一个隐藏的*跟踪文件,并添加一个忽略所有其他文件的规则。
对于hg,.hgignore必须位于顶层(据我所知),因此您需要在要保留的目录中添加一个.keep文件(或其他描述名称),并向.hgignore添加一条规则以忽略其他所有内容。
对于git,您可以在目录本身中放置一个.gitignore文件,其中包含一个忽略所有文件的规则。在本例中,.gitignore本身将是隐藏的跟踪文件。(奖励:规则更容易写)
.开头的文件的系统中https://stackoverflow.com/questions/46520424
复制相似问题