Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Mercurial中使用Ant_Ant_Mercurial_Build - Fatal编程技术网

在Mercurial中使用Ant

在Mercurial中使用Ant,ant,mercurial,build,Ant,Mercurial,Build,我试图在Mercurial存储库上运行Ant构建,但遇到了一些问题。Ant任务似乎找不到build.xml文件。当我浏览Hg回购协议时,我可以在以下位置找到我的文件: myrepo/.hg/store/data/build 但是在这里,build.xml文件名为build.xml.i,我认为这可能会让Ant感到困惑,尽管我不确定 对Mercurial存储库运行Ant脚本的最佳方法是什么?还是我完全错了?您需要使用所需的build.xml版本更新“工作目录”。这通常是最新的,因此您可以: $ c

我试图在Mercurial存储库上运行Ant构建,但遇到了一些问题。Ant任务似乎找不到
build.xml
文件。当我浏览Hg回购协议时,我可以在以下位置找到我的文件:

myrepo/.hg/store/data/build
但是在这里,
build.xml
文件名为
build.xml.i
,我认为这可能会让Ant感到困惑,尽管我不确定


对Mercurial存储库运行Ant脚本的最佳方法是什么?还是我完全错了?

您需要使用所需的build.xml版本更新“工作目录”。这通常是最新的,因此您可以:

$ cd hgrepo
$ hg update
$ ant build

其中,
hgrepo
是Mercurial存储库。

您需要使用所需的build.xml版本更新“工作目录”。这通常是最新的,因此您可以:

$ cd hgrepo
$ hg update
$ ant build

其中,
hgrepo
是Mercurial存储库。

您正在尝试在存储库内运行构建(myrepo/.hg/store/data/build)。除非您使用工作目录,否则其他事情可能会失败。要获取工作目录,请告诉HG克隆存储库


换句话说,您应该将HG存储库视为只能通过HG命令操作的模糊数据库。这同样适用于任何其他VC/SCM系统(尝试查看SVN存储库内部)。

您尝试在存储库内部运行构建(myrepo/.hg/store/data/build)。除非您使用工作目录,否则其他事情可能会失败。要获取工作目录,请告诉HG克隆存储库


换句话说,您应该将HG存储库视为只能通过HG命令操作的模糊数据库。这同样适用于任何其他VC/SCM系统(尝试查看SVN存储库内部)。

我应该澄清一下,我正在尝试在远程存储库中的build.xml文件上运行。因此,在我的本地存储库中,我可以很容易地找到该文件。但是,我的遥控器在网络上的Linux服务器上。因此,当我转到该服务器并查找存储库时,我在那里找不到该文件。实际上,我所做的是在远程存储库上运行hg archive。然后我就可以拿到我的文件了。然而,这似乎并不正确。有更好的方法吗?如果远程回购是你的中央回购,那么你不想从那里运行东西;最好是通过克隆repo,完成自己的工作,然后删除repo来创建一个临时工作目录。事实上,我们的中央回购协议只能从Apache访问。
hg archive
到另一个位置,那里的建筑也很好<代码>hg存档在回购协议本身内部(使用
hg存档
构建工作副本)将是执行
hg更新
hg恢复
的较低方法。如果我是你,我会创建一个更新为tip并在其中构建的克隆。好吧,我应该澄清一下,我正在尝试在远程存储库中的build.xml文件上运行。因此,在我的本地存储库中,我可以很容易地找到该文件。但是,我的遥控器在网络上的Linux服务器上。因此,当我转到该服务器并查找存储库时,我在那里找不到该文件。实际上,我所做的是在远程存储库上运行hg archive。然后我就可以拿到我的文件了。然而,这似乎并不正确。有更好的方法吗?如果远程回购是你的中央回购,那么你不想从那里运行东西;最好是通过克隆repo,完成自己的工作,然后删除repo来创建一个临时工作目录。事实上,我们的中央回购协议只能从Apache访问。
hg archive
到另一个位置,那里的建筑也很好<代码>hg存档在回购协议本身内部(使用
hg存档
构建工作副本)将是执行
hg更新
hg恢复
的较低方法。如果我是你,我会创建一个更新为tip并在其中生成的克隆。你确定没有忽略生成目录吗?(
.hgignore
)是否确定未忽略生成目录?(
.hgignore
)那么,我猜我上面使用hg归档的方法不是首选方法?我的本地服务器上有一个工作目录,但运行build.xml文件将执行本地服务器的构建(我们使用的是CMS和CMS服务器)。@sma这不是“不首选”,是禁止的。只要更新、提交、推送和拉取工作正常,您就不应该知道或关心进入HG存储库的内容。谢谢。昨晚我结合这些评论读了一些书。我想我现在更好地理解了工作目录的概念。谢谢大家的帮助。所以,我猜我上面提到的使用hg存档的方法不是首选方法?我的本地服务器上有一个工作目录,但运行build.xml文件将执行本地服务器的构建(我们使用的是CMS和CMS服务器)。@sma这不是“不首选”,是禁止的。只要更新、提交、推送和拉取工作正常,您就不应该知道或关心进入HG存储库的内容。谢谢。昨晚我结合这些评论读了一些书。我想我现在更好地理解了工作目录的概念。谢谢大家的帮助。