Version control 与Qooxdoo和多个开发人员一起开发

Version control 与Qooxdoo和多个开发人员一起开发,version-control,collaboration,qooxdoo,Version Control,Collaboration,Qooxdoo,我对Qooxdoo作为一个可能的web开发框架感兴趣。我已经下载了SDK,并将其安装在PC的中心位置,因为我希望在多个项目中使用它。我使用createapplication.py脚本创建了一个新的测试应用程序,并将所有生成的文件添加到我的版本控制系统中 我希望能够在这方面与其他PC上的其他开发人员合作。他们可能会将SDK安装在不同的位置。Qooxdoo中自动生成的文件似乎包括config.json和generator.py中的SDK路径:如果SDK路径移动,则generator.py脚本停止工作

我对Qooxdoo作为一个可能的web开发框架感兴趣。我已经下载了SDK,并将其安装在PC的中心位置,因为我希望在多个项目中使用它。我使用
createapplication.py
脚本创建了一个新的测试应用程序,并将所有生成的文件添加到我的版本控制系统中

我希望能够在这方面与其他PC上的其他开发人员合作。他们可能会将SDK安装在不同的位置。Qooxdoo中自动生成的文件似乎包括
config.json
generator.py
中的SDK路径:如果SDK路径移动,则
generator.py
脚本停止工作
generator.py
似乎没有太大问题,因为它在
config.json
中查找更新的路径,但我不确定如何最好地处理
config.json

到目前为止,我想到的唯一选择是:

  • 将其从VCS中排除,但似乎没有自动重新生成它的脚本,因此这可能是危险的
  • 将其添加到VCS中,但让每个开发人员修改路径行,并接受在合并更改时可能需要对其进行调整
  • 将config.json更改为路径和单个“include”行,该行指向包含所有非SDK路径相关信息的第二个文件
  • 使用SDK的相对路径,并为每个使用它的项目保留一个单独的、位置相近的SDK副本
  • 如果存在生成脚本,方法1将是理想的;方法2真的很糟糕;我无法让方法3发挥作用,方法4有点混乱,因为这意味着SDK的多个副本散落在这个地方

    Android SDK似乎很好地解决了这一问题(使用方法1),SDK路径在其自己的文件中,脚本自动生成该文件。据我所知,Qooxdoo将许多其他重要信息放在
    config.json
    中,自动生成该文件的唯一方法是创建一个新项目


    有没有更好的/推荐的方法来处理这个问题?

    我们使用一个指向sdk的符号链接。。。config.json只包含链接的路径。

    作为使用符号链接的替代方法,您可以在命令行上覆盖QOOXDOO_path宏:

    ./generate.py source -m QOOXDOO_PATH:<local_path_to_qooxdoo>
    
    /generate.py source-m QOOXDOO\u路径:
    

    (根据您使用的shell,您可能需要对-m参数进行适当的引用)。这样,每个程序员都可以使用本地安装的qooxdoo SDK。您甚至可以从config.json中删除QOOXDOO_路径条目来强制执行此操作。

    这是个好主意。这将如何用于Windows上的开发人员?嗯,不确定这是否有效,但建议在windows ntfs文件系统上使用mlink命令提供符号链接…还要注意,如果您有samba服务器,您可以在那里创建符号链接,windows会认为那里有qooxdoo的本地副本。我不是真的得到3。你能详细说明一下吗?在config.json中有一个“include”部分,所以拿了一份传单(对json一无所知),将除了QOOXDOO路径之外的整个文件复制到另一个文件中,并在include部分引用了另一个文件。这听起来几乎完美:我可以轻松地编辑local generator.py脚本,以便自动添加参数,并从另一个python脚本加载QOOXDOO_路径(其中没有其他内容)。不幸的是,它在Windows上也不起作用,因为更高级别的
    生成器.py
    使用
    拆分(':')
    而不是
    拆分(':',1)
    ,所以Windows路径(在驱动器号被拆分后,路径中带有
    )会收到错误消息)。如此接近,但到目前为止…这已经被固定在主干:-)。如果您想继续使用1.2版本,只需继续修补tool/pylib/misc/ExtendAction.py:41。