Jedit git插件用法

时间:2015-12-03 02:10:36

标签: plugins gitlab jedit

我已经为JEdit安装了Git插件,但是没有看到如何使它工作。 我目前使用SVN插件并没有遇到任何问题,但工作是要求更改gitlab。

我在哪里设置对gitlab存储库的访问权限以及它作为URL或SSH URI的期望

1 个答案:

答案 0 :(得分:1)

只要您可以在命令行中克隆该GitLab存储库,就可以在JEdit Git plugin中使用相同的网址。

因此,首先检查您是否可以手动克隆回购:

git clone https://url/to/your/gitlab/server/user/repo

如果可行,请在JEdit中报告该网址。

查看JEdit Git plugin 0.7.1的来源,我看到了:

  • “已修改”图标为黄色:modified
  • “已添加”图标为蓝色:added
  • 任何其他跟踪文件都应为“未修改”,即绿色:unmodified

注意/更新2017年4月:我无法使用最新的jdk 8和Git for Windows 2.12.2在Windows上运行该插件。

我明白了:

16:02:37 [AWT-EventQueue-0] [debug] EditBus: PluginUpdate[what=ACTIVATED,exit=false,version=0.7.1,source=C:\Users\vonc\AppData\Roaming\jEdit\jars\GitPlugin.jar,class=git.GitPlugin]
16:03:32 [jEdit Worker #1] [debug] GitSubmoduleImporter: Running git ls-files in C:\Users\vonc\data\git\seec
16:03:43 [AWT-EventQueue-0] [debug] ActionSet: Loading actions from jeditresource:/GitPlugin.jar!/actions.xml

但是当激活“提交”对话框时,列表为空,单击它会触发:

16:04:02 [AWT-EventQueue-0] [error] AWT-EventQueue-0: java.lang.ArrayIndexOutOfBoundsException: -1
16:04:02 [AWT-EventQueue-0] [error] AWT-EventQueue-0:  at java.util.Vector.elementData(Vector.java:734)
16:04:02 [AWT-EventQueue-0] [error] AWT-EventQueue-0:  at java.util.Vector.elementAt(Vector.java:477)
16:04:02 [AWT-EventQueue-0] [error] AWT-EventQueue-0:  at javax.swing.DefaultListModel.elementAt(DefaultListModel.java:266)
16:04:02 [AWT-EventQueue-0] [error] AWT-EventQueue-0:  at git.action.CommitAction$CommitDialog.toggle(CommitAction.java:374)
16:04:02 [AWT-EventQueue-0] [error] AWT-EventQueue-0:  at git.action.CommitAction$CommitDialog.mouseClicked(CommitAction.java:363)
16:04:02 [AWT-EventQueue-0] [error] AWT-EventQueue-0:  at git.action.CommitAction$CommitDialog.access$200(CommitAction.java:167)
16:04:02 [AWT-EventQueue-0] [error] AWT-EventQueue-0:  at git.action.CommitAction$CommitDialog$3.mouseClicked(CommitAction.java:285)

我关注的是GitPlugin\git\command\OpenFileList.java,其中包括

    if (line.startsWith("# Changed but not updated:") ||
        line.startsWith("# Changes not staged for commit:")) {
        skip = 2;
        target = modified;
    }

嗯......我在Windows上的提示不是以'#'开头,因此检测分阶段文件的变化会变得很小。