在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才能提交生效,
初次提交项目,选择全部项目文件提交
接着刚才提交本地的项目,选择全部文件后,上边的文件全部转移到了下边
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项目了!