在Eclipse上使用egit插件通过ssh协议方式上传项目代码

前戏:

使用ssh方式可以不通过https协议,避免直接提供账号密码的方式上传项目到git在线服务器,如Bitbucket、GitHub,同时极其可靠的保证账号安全性。

对于像笔主一样刚出道的程序员,习惯于使用eclipse的GUI界面,面对百度上搜索出来关于git操作的漫天的命令行,总有百般无奈,好不容易找到了GUI上的操作教程,按着做却一遍遍的出错,翻查git服务器的ssh支持文档,也没查到问题,也考虑过eclipse的bug问题,经过漫长探索,综合多个帖子博文的资料,终于在刚才攻破了在eclipse上使用egit插件通过ssh协议方式上传项目代码的难题!拍手拍手233

操作步骤:

  1. Eclipse:Window->preferences->General->Network Connections->SSH2
  2. 在General页,确认SSH2 home位置,用于存储SSH协议使用的非对称加密密钥文件,默认即可
  3. 切换到Key Management页,选择点击 Generate DSA key 或 Generate RSA key 按钮,生成DSA或RSA算法的密钥,原则上是DSA或RSA都受支持的,个人感觉DSA甚至更好,毕竟两者中DSA被美国NIST挑选作为数字签名标准,但是RSA在百度搜索出的纵多博文中被使用,纠结啊~~~(笔主这里为了迎难而上,使用DSA)
  4. 生成了看上去满意的密钥后,填写Comment简要注释,填写Passphrase(可选填项,相当于password,用于加密保护私钥,填写后每次上传服务器,将要求提供此密码验证私钥的使用权),点击SavePrivateKey
  5. 关键步骤】点击 Export Via SFTP ,按 user@host[:port] 形式输入公钥绑定的服务器域,如 git@bitbucket.org 或 git@github.com (user直接就是git,copy粘贴就可以),输入刚才的Passphrase,点击各种确定,最后会在 SSH2 home 的密钥文件id_rsa、id_rsa.pub(文件名称可自定义)旁边生成一份known_hosts文件,记录每个公钥绑定的服务器,笔主这边每次都会报出 Failed to export ssh key to remote server 的错误,直接忽略。   ----- ps. 最后面push的时候报出 The authenticity of host 'bitbucket.org' can't be established. 之类的错误,阻止上传,基本都是没执行这一步的原因。
  6. 点击 Load Existing Key ,选择刚才生成的私钥,输入Passphrase,点击Apply (不知道需不需要这一步,试验多了忘了)
  7. 点击旁边的Known Hosts页,应该能看到刚才绑定的服务器记录,返回General页,确认Private keys中包含了刚才保存的私钥件id_rsa,没包含的话点击旁边的Add添加进去,最后点击Apply
  8. 最好重启一次Eclipse
  9. 把生成的公钥(刚才生成密钥的时候显示的那一串东西)绑定到git服务器上,bitbucket是通过manage account里面的SSH keys中粘贴上去的,用记事本打开id_rsa.pub看到的就是,全部复制下来,乃懂的。
  10. 在bitbucket或github中新建个项目库,把库对应的SSH上传地址拷贝下来待用,类似ssh://git@bitbucket.org/username/myXXOO.git 或 git@bitbucket.org:username/myXXOO.git这种形式的,自己找找
  11. 右键点击项目,先执行team->share project,添加到git本地版本库管理,然后需要team->commit,填下comment就可以提交了,再之后team->remote->push,把上面的SSH地址贴到URI上面,之后点击next,点击Add all branches spec,点击Finish,上传完成。

在Eclipse上使用egit插件通过ssh协议方式上传项目代码的具体步骤的更多相关文章

  1. git上传项目代码到github

    参考: git学习——上传项目代码到github github上传时出现error: src refspec master does not match any解决办法 git 上传本地文件到gith ...

  2. 在eclipse中使用jetty插件替代m2e开发调试maven web项目

    第一步在相应的web项目上配置jetty插件,配置如下: <plugin> <groupId>org.mortbay.jetty</groupId> <art ...

  3. Eclipse下安装SVN插件以及连接SVN服务并发布项目

    Eclipse安装SVN插件 Help->Eclipse MarketPlace 查找并安装Subclipse插件 按默认步骤完成SVNEclipse插件的安装(安装完成后需要重启Eclipse ...

  4. eclipse里安装SVN插件的两种方式

    eclipse里安装SVN插件,一般来说,有两种方式: 直接下载SVN插件,将其解压到eclipse的对应目录里 使用eclipse 里Help菜单的“Install New Software”,通过 ...

  5. 如何使用Git上传项目代码到代码服务器

    如你本机新建Git项目 地址:git@github.com:yourName/yourRepo.git,远程代码库服务器地址:192.168.10.1,远程代码服务器账户名密码:admin 密码:12 ...

  6. TortoiseGit上传项目代码到github方法(超简单)

    Github是咱广大开发者用的非常多的项目代码版本管理网站,项目托管可以是私人的(private)或者公开的(public),私人的收费,一个月7美金.咱这里就只说我们个人使用的,一般都是代码对外开放 ...

  7. 【Mac系统 + Git】之上传项目代码到github上以及删除某个文件夹

    之前做开发的时候,用过一段时间git代码管理工具,用命令行操作感觉十分高大上,今天我想从头总结一篇Mac系统下如何利用git上传代码到github上的学习. 目录 一.安装Git 二.创建.ssh文件 ...

  8. 使用Git上传项目代码到github

    github是一个基于Git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开.这对于一般人来说公共仓库就已经足够了.   注册账户以及创建仓库 要想使用gi ...

  9. Jenkins - SSH认证方式拉取Git代码

    1.本地生成密钥 [root@root ~] ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which ...

随机推荐

  1. struts2学习

    struts2是一种基于mvc模式的轻量级web框架,它本质上相当于一个servlet,在mvc设计模式中,struts2作为控制器(Controller)来建立模型与视图的数据交互,struts2采 ...

  2. C# Winform 实现屏蔽键盘的win和alt+F4的实现代码

    最近在做一个恶搞程序,就是打开后,程序获得桌面的截图然后,然后全屏显示在屏幕上,用户此时则不能进行任何操作. 此时希望用户不能通过键盘alt+F4来结束程序及通过Win的组合键对窗口进行操作.我在网上 ...

  3. 4 class类 web服务器

    1.换行符 2.pycharm 连接Ubuntu 1)添加环境变量 2)查看ip 3)配置目录 4)上传或者下载 3.面向对象抽象web服务器 1)版本1:类 class HttpServer(obj ...

  4. Java集合类面试题

    java.util包中包含了一系列重要的集合类,而对于集合类,主要需要掌握的就是它的内部结构,以及遍历集合的迭代模式. 1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最 ...

  5. guacamole实现虚拟键盘

    要做的事情比较简单,就是先实例化一个虚拟键盘,然后监听事件即可. js代码 //虚拟键盘数据 var a = {"language":"en_US"," ...

  6. PHP批量替换MySql数据库中的数据内容

    <?php //替换数据库内容类 class replace{ public $dbAddress; //数据库地址 public $dbUser; //数据库用户名 public $dbPwd ...

  7. 生成Excel.xlsx文件 iOS

    使用到的三方库 https://github.com/jmcnamara/libxlsxwriter cocoapods导入 pod 'libxlsxwriter', '~> 0.8.3' 1. ...

  8. 涉及到大小变化,类似QScrollArea判断大小是否显示滚动条

    涉及到大小变化,类似QScrollArea判断大小是否显示滚动条的情况要注意 这两个属性的设置:

  9. (原)编写JAVA工具之json自动封装成pojo

    代码在最后 我个人是不太喜欢http和json,可能是游戏做的多了的原因的,对通信协议和通信方式特敏感,因此即使是做应用我也会选择rpc而非http,但是有时候因为各种原因,还是不的不处理标准的htt ...

  10. kindeditor 限制上传图片大小及宽高

    进入:/kindeditor/plugins/image/image.js,替换其中的 self.plugin.imageDialog = function (options)方法,代码为: self ...