我正在为客户端的应用程序工作。客户也将在完成项目后开发应用程序,因此我需要让他们轻松完成此项任务。我一直使用CoffeeScript编写我的JavaScript,然后使用Ant脚本将它们推送到我的个人构建服务器时编译它们。在SVN上编译CoffeeScript预提交
Ant脚本调用coffee -c js/*.coffee
,它将所有咖啡文件编译成具有相同名称的JS文件。我想在SVN预提交钩子中执行相同的命令。我知道使用SVN钩子来更改文件是一件坏事,但我认为,因为我实际上并没有更改任何文件,而是创建了新文件,所以这不会被归类为人们声称的大坏消息。我对SVN根本不熟悉(我通常使用Git)以及我可以找到的所有关于python脚本和svnlook工具的讨论,但没有任何实际解释它。
为什么你首先使用SVN?你应该使用正确的工具来完成这项工作,而SVN似乎不是**正确的工具。 –
小心细化奥斯汀......我不想使用SVN,但我需要跟踪那些为我的客户端提供的文件。这是他们的SVN服务器。我宁愿使用Git,并且如实地Git会更容易,但是我给了SVN,而且我不会说没有正当理由的“SVN是错误的工具”。 –
在这种情况下,我会修改我的声明并说“SVN *预提交钩子*可能*不适合工作”。预先提交钩子的目的是为了验证你没有将错误代码放入版本控制中,以及各种其他**被动**函数。作为一般规则,您应该对* source *进行版本控制,而不是编译后的输出。很明显,在这种情况下,对于你的客户端来说,编译后的输出*就是源代码。也许一个更好的解决方案是保留两个回购:给你一个coffeescript,并为他们编写一个(编译的)javascript。 –