在eclipse中使用git创建本地库,以及托管项目到GitHub超详细教程

关于安装git的教程,由于比较简单,并且网上教程特别多,而且即使不按照网上教程,下载好的windows版本git,安装时候一路默认设置就行。

安装好之后,在桌面上有git图标:右键菜单中有Git Base Here和Git Gui Here两个选项,Git Base Here打开可以写git命令,Git Gui Here提供了UI界面的可视化工具。

  在需要创建git库的地方建立一个文件夹,选择git gui here,利用可视化工具创建版本库, 我在F盘右键新建了一个文件夹git_repositories

作为git版本管理库,然后进入git_repositories文件夹内,右键git gui here ,打开git gui 工具,选择create new repository,然后选中F盘的git_repositories文件夹,创建好之后,在git_repositories文件夹内会出现一个.git的文件夹,电脑中如果选择显示隐藏文件夹这个选项没有勾选,这个文件夹是看不到的,因为这个文件夹默认是隐藏的,此时已经建立好了本地仓库。

然后右键新建一个本地的工作文件夹(这个文件夹内用于存放需要提交的java项目) ,就是mylocalRepositories内的项目提交本地后,版本信息会到.git文件夹中,提交远程时候,本地库会提交到远程仓库。

创建好本地仓库和工作文件夹后,现在进入eclipse中设置git插件,我安装的eclipse默认已经有git插件,如果没有的可以到eclipse market中搜索安装,安装后,在window-preferences中搜索git就可以看到相关设置信息了

 接下来选择configurator,设置username和email,通过add entry添加key:user.name ,值设置为:xiaomifeng1010   ,key:user.email ,值设置为你的邮箱,apply and close

然后再windows-show view -others,搜索git,选择git repositories,Open​ 

然后选择Add an existing local Git repository,文件目录选择F盘的 git_repositories,点击Add进行添加,添加后,就有了仓库

接下来就可以将eclipse中的项目提交到本地仓库进行管理了!

 

选择git,next,

然后选择本地仓库的地址,从下拉列表中选择就可以了,path within repository(仓库中路径),从browse中选择mylocalRepositories文件夹(就是存放需要提交项目的文件夹),也是下边的target location

点击finish即可,此时,项目还没有真正提交到本地仓库,需要手动commit才能提交生效,

 

初次提交项目,选择全部项目文件提交

​ 至于下方的author和commiter中出现的xiaomifeng1010以及邮箱,是在eclipse中preference中git设置项中配置的用户名和邮箱

 接着刚才提交本地的项目,选择全部文件后,上边的文件全部转移到了下边

commit message(提交信息)这个一定要填写的,不然会报错,这个和svn有一些差异,svn中不填写提交信息不会报错!

 

由于是提交到本地库,所以选择commit,左边的commit and push,可以推送到远程仓库,不过现在还没有建立远程仓库。

接下来,利用GitHub作为一个远程仓库,讲解eclipse中项目提交到远程仓库的方法

 

选择push branch ‘master’ …

此时弹出来一个窗口,不过现在还填写不了,你可以先填写一个remote库的名字,下边的uri和host现在还填写不了

 

 

此时你需要登录你的GitHub账号,在图中的new地方新建一个repository, 

然后填写仓库相关信息,仓库名:TestGit,描述你可以填写,也可以不填写,不是必填的,当然你可以填写一下,介绍一下这个仓库,GitHub现在可以将仓库设置为public或者private,最后点击create repository,就创建好了一个新的repository。

建立好之后,就会进入TestGit仓库,连接地址可以选择https协议或者ssh协议,这里我推荐使用ssh协议,因为eclipse中使用https协议连接GitHub会出现很多意外错误,无法连接!虽然使用ssh协议连接会麻烦一点,但是连接成功

 如果使用https协议就选择https,然后再上图的箭头位置,点击赋值uri,然后将复制的uri粘贴到eclipse中

复制uri后,host和repository path会自动提取的,箭头处选择https(因为在github中复制的是https协议的地址),user和password分别对应GitHub账号和密码

然后点击preview,进入下一步

 然后点击advanced push(在右下角蓝色文字),

复制GitHub仓库地址,点击next

 

 第五步纠正一下,点击next

注意这个箭头位置实际上会报错的,这里没报错是因为,我已经处理过了,可能会报错为​ 

或者这个错误:github cannot open git-upload-pack(git-receive-pack),解决这个错误,可以参考博客:最新eclipse连接github cannot open git-upload-pack(git-receive-pack)

至于non -fast-forward错误,比较好的解决方法就是使用ssh协议进行连接

接下来选择使用ssh方式连接到GitHub

首先要使用ssh方式连接到GitHub,就需要在eclipse中产生ssh的key提供给GitHub,

那么如何产生ssh的key呢,在eclipse中window-preferences,搜索network connections,选择ssh2,然后在key management中选择generate rsa key

 会生成RSA key,选择save private key…(会生成私钥和公钥的文件,因为RSA是非对称加密,所以会生成两个密钥)

会弹出提示:是否在私钥没有密码情况下保存,点击ok就可以了,会在创建的文件夹下创建公钥和私钥文件

 

我的是在C:/user/ MSI/.ssh文件夹下保存的,其中id_rsa是私钥,是自己电脑使用,id_rsa.pub是公钥,公钥待会要复制给GitHub使用,用来和本机进行验证,保存即可。

接下来用notepad++打开公钥文件,全选复制公钥字符串

然后再次进入GitHub网站,在个人头像下选择settings

 

 然后选择ssh and gpgkeys,点击new ssh key

 下图箭头地方,粘贴上刚才复制的公钥字符串,然后add ssh key

就在GitHub上建立了ssh key了,例如下图中是我之前已经建立好的ssh key

 接下来回到eclipse中,这次我们使用ssh协议来连接,注意,此时协议需要选择ssh协议,端口号可以不用填,

这时的uri就不是刚才的https开头的地址了

此时需要我们到GitHub中重新复制ssh协议的地址,转到GitHub中新建的仓库TestGit

 

将ssh协议的链接复制到eclipse中

 

这个地方注意一下,authentication这个地方不用管,因为我们在创建ssh key的时候并没有创建密钥的passphrase(密码),所以这里不用填写,点击preview

接着preview

或者选择advanced push,然后将GitHub中的库的地址再粘贴一遍

 

next

 

 next

点击finish,查看progress,可以看到eclipse中的项目正在往GitHub中推送,等待到100%就成功了!

 

此时进入GitHub,查看TestGit仓库,发现已经有了testAndReview这个项目了!

以后就可以愉快地push项目的变化到GitHub,或者从GitHub上pull项目了!