Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Wolf2018-10-20 10:47:52 -0400
committerThomas Wolf2018-11-17 12:57:51 -0500
commit33cc25fcead0ed86bd61c0f87625aac1dcaf6b90 (patch)
treec9fa7bece549ab658933d1af2c25f25a5550a152 /org.eclipse.egit.repository
parent2f75c631e5f4e5f0354d18ff0311abf69c6db8bc (diff)
downloadegit-33cc25fcead0ed86bd61c0f87625aac1dcaf6b90.tar.gz
egit-33cc25fcead0ed86bd61c0f87625aac1dcaf6b90.tar.xz
egit-33cc25fcead0ed86bd61c0f87625aac1dcaf6b90.zip
Include the Apache MINA ssh client
Add a preference with UI in the main Git preference page to select between JSch and the new Apache MINA sshd client. Read preferences from the org.eclipse.jsch.core preference node and install a listener to pick up preference changes. The session factory thus can use the ssh preferences as configured by the user. For the time being, we use the ssh directory, the default identities, and the preferred authentication mechanisms. The latter two can be overridden through the ssh config file, which will be the one in the configured ssh directory. The other preferences from org.eclipse.jsch are not taken into account; sshd may have different algorithms available and I don't want to change preferences in a foreign bundle. Make the proxy service accessible in the EGit core activator, and use it in a ProxyDataFactory in the EGitSshdSessionFactory. The EGitSshdSessionFactory has no key cache. Eclipse is a long-running application, and keeping ssh keys in memory for that long is most probably not wise. Instead re-load keys whenever they are needed, and use an IdentityPasswordProvider (which provides passwords for encrypted private key files) that uses the Eclipse secure storage for key passphrases to avoid repeatedly asking the user for the same passphrases for the same keys. Bug: 520927 JGit-Dependency: Iaa78bbb998a5e574fa091664b75c48a3b9cfb897 Change-Id: Id3cf850c4e132e864eab7eda52c20ff379e2b1d9 Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
Diffstat (limited to 'org.eclipse.egit.repository')
-rw-r--r--org.eclipse.egit.repository/category.xml12
-rw-r--r--org.eclipse.egit.repository/pom.xml2
2 files changed, 10 insertions, 4 deletions
diff --git a/org.eclipse.egit.repository/category.xml b/org.eclipse.egit.repository/category.xml
index 9120cc6cd..db0271ffd 100644
--- a/org.eclipse.egit.repository/category.xml
+++ b/org.eclipse.egit.repository/category.xml
@@ -27,12 +27,18 @@
<feature url="features/org.eclipse.jgit.http.apache_0.0.0.qualifier.jar" id="org.eclipse.jgit.http.apache" version="0.0.0">
<category name="JGit"/>
</feature>
- <feature url="features/org.eclipse.egit.gitflow.feature_0.0.0.qualifier.jar" id="org.eclipse.egit.gitflow.feature" version="0.0.0">
- <category name="EGit.experimental"/>
- </feature>
<feature url="features/org.eclipse.jgit.lfs_0.0.0.qualifier.jar" id="org.eclipse.jgit.lfs" version="0.0.0">
<category name="JGit"/>
</feature>
+ <feature url="features/org.eclipse.jgit.ssh.apache_0.0.0.qualifier.jar" id="org.eclipse.jgit.ssh.apache" version="0.0.0">
+ <category name="JGit"/>
+ </feature>
+ <feature url="features/org.eclipse.jgit.ssh.apache.source_0.0.0.qualifier.jar" id="org.eclipse.jgit.ssh.apache.source" version="0.0.0">
+ <category name="JGit"/>
+ </feature>
+ <feature url="features/org.eclipse.egit.gitflow.feature_0.0.0.qualifier.jar" id="org.eclipse.egit.gitflow.feature" version="0.0.0">
+ <category name="EGit.experimental"/>
+ </feature>
<bundle id="org.eclipse.egit.ui.smartimport" version="0.0.0">
<category name="EGit.experimental"/>
</bundle>
diff --git a/org.eclipse.egit.repository/pom.xml b/org.eclipse.egit.repository/pom.xml
index c5ab2a0d0..62fe41225 100644
--- a/org.eclipse.egit.repository/pom.xml
+++ b/org.eclipse.egit.repository/pom.xml
@@ -31,7 +31,7 @@
<p2MirrorsURL>http://www.eclipse.org/downloads/download.php?file=${PUBLISH_FOLDER}&amp;format=xml</p2MirrorsURL>
<p2StatsURL>http://download.eclipse.org/stats/egit/${project.artifactId}</p2StatsURL>
<!-- At the moment, this list of features needs to be maintained manually. -->
- <statsTrackedArtifacts>org.eclipse.jgit.feature,org.eclipse.jgit.source.feature,org.eclipse.jgit.pgm.feature,org.eclipse.jgit.pgm.source.feature,org.eclipse.jgit.http.apache.feature,org.eclipse.egit.feature,org.eclipse.egit.gitflow.feature,org.eclipse.egit.mylyn.feature,org.eclipse.egit.source.feature</statsTrackedArtifacts>
+ <statsTrackedArtifacts>org.eclipse.jgit.feature,org.eclipse.jgit.source.feature,org.eclipse.jgit.pgm.feature,org.eclipse.jgit.pgm.source.feature,org.eclipse.jgit.http.apache.feature,org.eclipse.jgit.ssh.apache.feature,org.eclipse.egit.feature,org.eclipse.egit.gitflow.feature,org.eclipse.egit.mylyn.feature,org.eclipse.egit.source.feature</statsTrackedArtifacts>
</properties>
<profiles>

Back to the top