Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/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
自动解决属性文件的SVN冲突_Svn_Ant_Properties - Fatal编程技术网

自动解决属性文件的SVN冲突

自动解决属性文件的SVN冲突,svn,ant,properties,Svn,Ant,Properties,我有一个属性文件,它有两个值,这两个值会不断导致冲突。我正试图找出如何根据该值自动解决SVN中的冲突。为了简单起见,我希望总是接受较高的数字。以下是价值观 >>>>>>>=.r701 Application.revision=700 Application.buildnumber=5,572 <<<<<<<=.mine Application.revision=701 Application.buildnumbe

我有一个属性文件,它有两个值,这两个值会不断导致冲突。我正试图找出如何根据该值自动解决SVN中的冲突。为了简单起见,我希望总是接受较高的数字。以下是价值观

>>>>>>>=.r701
Application.revision=700
Application.buildnumber=5,572
<<<<<<<=.mine
Application.revision=701
Application.buildnumber=5,571
=\=\=\=\=\=\=
>>>=.r701
应用程序版本=700
Application.buildnumber=5572

ANT有一个
ReplaceTask

您可以定义您的属性,如:

Application.revision=@rev@
Application.buildnumber=@build@

并在签入前用适当的值替换
@rev@
@build@
令牌。这不会产生冲突,但是,您必须在属性文件外部读取/生成这些令牌值。

这可能是相同的问题,但我正在寻找不同的解决方案。这个问题是使用生成的代码。我试图找出如何用两个数字中的较高者来替换所讨论的值。我一直在看它并思考。。我有CASUALApp.properties,CASUALApp.properties.mine,CASUALApp.properties.r717和CASUALApp.properties.r720。。。如果有某种方法可以循环浏览所有这些属性文件,并找出其中一个文件的值是否高于另一个文件,那么它就可以工作了。要么使用subversion的特性,以支持最新版本,要么使用Bimlash建议的方法首先避免冲突。循环浏览文件对我来说太乱了。。。两个原因:它将您的构建与subversion联系在一起,并且ANT不是真正的编程语言:-(那么它们存储在哪里?在一个工作周期内,构建可能会增加几次。有几个人在这个项目上工作。肯定有关于单调数字的规定。@AdamOutler这里建议的方法是一种避免首先解决冲突的方法。提供像appl这样的临时数据将版本和版本号作为构建的参数(由Jenkins这样的构建服务器管理)。在ANT中使用命令行“-D”很容易做到这一点参数。更简单、更标准的解决方案。就我个人而言,我只是在build.xml文件的顶部用默认值声明这些变量,因为我知道在构建时我会超越它们。