diff options
author | Thomas Wolf | 2018-10-20 14:47:52 +0000 |
---|---|---|
committer | Thomas Wolf | 2018-11-17 17:57:51 +0000 |
commit | 33cc25fcead0ed86bd61c0f87625aac1dcaf6b90 (patch) | |
tree | c9fa7bece549ab658933d1af2c25f25a5550a152 /org.eclipse.egit.repository | |
parent | 2f75c631e5f4e5f0354d18ff0311abf69c6db8bc (diff) | |
download | egit-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.xml | 12 | ||||
-rw-r--r-- | org.eclipse.egit.repository/pom.xml | 2 |
2 files changed, 10 insertions, 4 deletions
diff --git a/org.eclipse.egit.repository/category.xml b/org.eclipse.egit.repository/category.xml index 9120cc6cd8..db0271ffda 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 c5ab2a0d04..62fe41225f 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}&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> |