Subclipse:有没有办法让团队>创建补丁使用相对路径?



我最近参与了一个Java项目:我们将MyEclipse用于IDE,将Subclipse用于源代码管理集成。由于我是该项目的新手,我目前正在将我所做的任何更改作为补丁提交,以便其他团队成员更容易审查我的更改并决定是否将其提交到主干网。但是,当我使用"团队"菜单中的"创建修补程序"选项创建修补程序时,生成的修补程序包含已更改文件的绝对路径。由于我希望能够通过电子邮件将这些补丁程序发送给其他团队成员,并让他们简单地将补丁程序应用到自己的工作文件夹中,所以我希望生成只包含相对文件路径的补丁程序(我在Ubuntu上运行,目前我的工作副本在我的主文件夹中,因此绝对路径尤其令人讨厌)。

有没有一种方法可以配置Eclipse/Subclipse来做到这一点?我搜索了Eclipse首选项,并点击了创建补丁向导几次,但我找不到任何能做到这一点的东西。目前,我正在用文本编辑器手动编辑补丁文件,将绝对文件路径转换为相对路径。如果Subclipse不能做到这一点,我愿意接受其他建议。

EDIT:我知道在Eclipse中应用补丁时,可以选择忽略文件名路径中的一定数量的段,但我很好奇是否有办法避免这种情况,以减少应用补丁所需的步骤数。通过手动编辑路径,使其相对于项目的根文件夹,最终用户只需确保在根项目文件夹级别应用补丁。我希望在不需要手动编辑补丁文件的情况下拥有这种简单性。

subclipse的最新版本能够做到你所说的。我可能有相同的版本,因为1.2.4(我的版本)默认情况下使用文件系统作为补丁根,而1.5.2版本允许您在创建补丁文件之前选择补丁根(在项目、工作区或选择之间)。

好吧,对不起,我在那之后读到你已经知道如何手动补丁了,但我把它作为参考:

在升级之前,您可以手动打开补丁文件并对其进行编辑:

  1. 右键单击->打开->文本编辑器
  2. 查找/home/user/projectfiles/project/并将其全部替换为空白
  3. 请记住,在"Index:"和文件名之间只留一个空格,如"Index:.classpath",否则您的补丁将无法在基于Windows的Eclipse中使用

Subversion API在1.5中得到了增强,允许将相对路径位置传递给API。如果安装Subclipse 1.4.x(使用Subversion 1.5),则补丁将具有相对路径。还有许多其他与修补程序相关的增强功能,包括多项目修补程序以及选择修补程序中包含哪些文件的功能。

最新更新