我已经为 JEdit 安装了 Git 插件,但不知道如何使它工作。我目前使用 SVN 插件,对此没有任何问题,但工作要求更改 gitlab。
我在哪里设置对 gitlab 存储库的访问权限以及它期望的 URL 或 SSH URI
只要您可以在命令行中克隆 GitLab 存储库,您就可以在JEdit Git 插件中使用相同的 url 。
所以首先检查你可以手动克隆回购:
git clone https://url/to/your/gitlab/server/user/repo
如果可行,请在 JEdit 中报告该 url。
查看JEdit Git 插件 0.7.1的来源,我确实看到了:
注意/2017 年 4 月更新:我无法使用最新的 jdk 8 和适用于 Windows 2.12.2 的 Git 使该插件在 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
但是当激活 Commit 对话框时,列表是空的,点击它会触发:
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 上的提示不是以“#”开头的,所以检测暂存文件的变化变得很小。