在Myeclipse中提交代码到GitHub中

时间:2022-12-28 19:06:40

  这需要借助插件Egit,首先就是先下载该插件了,可以再eclipse中下载,也可以在外面下载,下载就不说了。下载地址git://github.com/houyongchao/plugin-Egit.git

下载好后,解压一下,将解压好的这个文件夹(起个名字egit吧),找到Myeclipse的安装路径,在安装路径里面找到dropins文件夹,把刚才解压好的文件夹egit放到里面就行了。此时需要重启Myeclipse。重启后,点击Window→Show View→Others此时会弹出一个框,如果里面有个git的目录,恭喜你,该插件已经可以用了。其实Google的SVN插件安装的步骤和这一样。
 
  下面就可以提交代码了,在项目名字上右键,→Team→Share Project→选Git,然后next,会弹出一个框在Repository位置处让你填如一个库,你可以点击右边的Create会弹出一个框,Parent directory是默认的父路径,可以不改,Name出填写一个库名字,自己可以起一个名字。完事后,点Finish就行了。此时是把你的项目拷贝到你的库中,在点Finish就行了。此时你的项目名字上会出现一些?号,这些问号表示这些资源库中没有。
 
  现在才开始提交代码, ,在项目名字上右键,→Team→Commit这个提交只是提交到你的本地库中,就是你刚才建的那个库,在弹出的Commit Change框中的第一个输入框中输入一些提交的信息,如“第一次提交”,下面要选择要提交的文件,想提交哪个文件在前面√选中就行了,如果想全选,在右边的中间有个√的框,点一下就行了。OK点Commit就行了,看看你的项目名字吧,?号已变成金黄的小罐子了,说明你已提交到本地库了。
如果想提交到GiHub上,在项目名字上右键,→Team→Remote→Push 会弹出一个框,下面就比较麻烦了。
 
  下面的前提是你已注册过GitHub了。
  新建个库,建好后会跳到一个页面,里面有Http和SSH两种协议地址,这个等会要用到。
  不要嫌冗余,下面说一些传输协议和密钥验证的事,貌似git传输默认是使用ssh(通常指ssh2)协议,当然也可以使用其他常见传输协议.而ssh2协议有多种验证方式,密码,密码加证书,或者纯证书,证书就是指非对称加密的密钥啦,自己拿着私钥,把公钥放到server上,然后两边一对,server就知道是你了.

  github就是用这种私钥公钥大家来配对的验证方式,当然,也有http协议的,其实是https,但是不知道是不是因为前段时间被攻击,还是第一次上传比较重要,反正我第一次push项目必须要用ssh2的方式,上去后才能看见https方式的链接,也许可以直接使用https.FQ的同志们可能知道一些ssh2,不过经常跟win7打交道不和linux打交道的童鞋可能会陌生,因为win7根本就原生不支持ssh2.

  所以要在github上上传你的项目,首先,你得有rsa密钥对,嗯,eclipse本身有这个工具,但是...别用,木有hosts文件,坑死爹了,我在这绕了一天啊,对,还要个hosts文件.所以,前面安装的git bash有用了.至于怎么生成密钥,请查看我的另一篇博文,http://blog.sina.com.cn/s/blog_9cd9df230101asbl.html

  默认的ssh密钥文件貌似是在.ssh文件夹下,其中最重要的是,把生成的密钥,还有hosts文件,拷到当前用户目录的ssh文件夹下 ,win7和xp的用户目录是不一样的.

  接着上面的做,在项目名字上右键,→Team→Remote→Push 会弹出一个框,让你填写一个地址,把你新建库是生成的两种协议地址,选择一个,如果选择 https,那就复制一下吧,粘贴到第一个输入框中,下面的会自动给你填好,协议和端口号,就不用管理,在name和password处,要输入你注册GitHub的名字和密码,另外别忘了选记住密码,完后点finish就行了。下面就开始提交了。如果选择SSH协议,那就复制一下吧,粘贴到第一个输入框中,下面所有的都不要动过了,name处是个git,但是可别自作多情去填上github的帐号密码,不然你会很痛苦的,比如遇到神马"Exception caught during execution of ls-remote command"的问题,原因很简单,github采用了纯rsa的验证方式,只要你的私钥配上了公钥,用公共账户git登录即可,绝对不需要画蛇添足的加上帐号密码,那样反而会出错,然后,跳转,再然后,建议一般人点击"Add All Branches Spec"吧,然后finish.

  下面就等待吧!

  如果你没有生成hosts文件之前,直接用egit来push会遇到

"Warning:Permanently added 'github.com,207.97.227.239' (RSA) to the list of know hosts.
Permission denied (publickey)"