Eclipse Neon 使用Git与Github 方法与问题

来源:互联网 发布:日本强大知乎 编辑:程序博客网 时间:2024/06/06 03:44

Eclipse Neon 版本中已经自动安装了Git,而在新版Neon中,使用Git多少会遇到一些问题,这次就将流程梳理一遍,并尝试解决遇到的问题。

1.申请Github账号

这个算是一个预备步骤, 如果本人有Github账号,可以忽略这一步。Github 基本的操作方法可以参考 百度经验。
GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。GitHub 于 2008 年 4 月 10 日正式上线,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。

2. 在Github中创建一个新的空的版本库

点击Github主页面右上角的加号,选择Create New Repository。出现如下内容。
Create Github Repository
填写版本库的名称,介绍。然后选择Public(Private是收费的),最后点击Create Repository。现在一个空的版本库就创建完成了。点击右侧绿色的按钮Clone or download,选择https的地址复制下来,以后会用到。
A repository

3.在Eclispe Neon中建立git本地库

打开Eclipse和一个准备使用git的项目。接下来,许多网上的教程说在File > Team > Share Project 选择GIT>next,但是在Neon中,File菜单里面并没有Team这一项。
因此,我们需要在Project Explorer窗口右击选定的项目,在其中选则Team>Share Project,打开后选择Use or create repository in parent folder of project,在点击左下方的Create Repository,然后Finish。需要说明的是,在Github上建立的Repository是Online的,而此时建立的Repository是Local的。下文后提到将二者联系到一起。
Local Git Repository
在建立好Git版本库的项目上右键>Team>Show in Repositories Viewj就可以查看Git库的内容了。

4.将代码提交的本地的Git版本库

首先,在项目中随便创建一些文件,并写一些代码。然后在项目上右键>Team>Commit。在某个地方就会蹦出来Git Staging的窗口,这个窗口可能在最下面……,然后调整到适当的大小。
Git Step 1
目前,所有的文件都属于没有被Git追踪的状态(Unstaged Changes)。可以将其中所有的文件选中,右键选择Add to Index。之后,建议在Commit Message里面填一些信息,这是一个好习惯,帮助记录每一的提交概况。最后点击Commit。
Git Step 2
我们可以通过右键项目>Team>Show in History来查看提交的记录。现在我们看见Git库里面已经提交了一版内容。
Git Step 3

5.将本地的库推到Github的库

现在Git库在本地,已经可以用作独立完成一个项目的良好工具,具体使用方法可以查看廖雪峰的Git教程 。但是,如果需要多人联网协作或是发布到网上,就要将本地的库推(push)到在线的Github库中。依旧是在项目右键>Team>Remote>Push,打开后如下所示。第一次打开,Eclipse会要求输入Github库的信息,现在我们用到之前复制的Github库的Https地址了,粘贴到URI那一栏中,下面两个会自动填好。Protocol选择https,Authentication那一栏填写的是Github账户和密码。
Git Step 4

点击Next出现如下内容,选择Source Ref和Destination Ref,并Add Spec。点击Finish之后,会让你在输一次Github的登录密码。
Git Step 5

我相信这么做并不会,提交成功,嘿嘿。!它会报一个叫做non-fast-forward的错误。 嘿嘿

5.1 错误一:Non-fast-forward

Git Problem1
因为根据过去使用Github的习惯,Online的库在push之前先要Pull一下,这是因为在多人协作时候,别人也可能Push过修改的内容。万一两人改了同一段内容,那么在版本库里面就会起冲突。因此,Git的策略就是先Pull一下,将所有内容本地查查是不是有冲突(Conflicts),解决完冲突之后,再Push。具体做法是,先右键项目>Team>Pull…。会有一个之前类似的窗口,把Github的https地址复制过去,然后下一步,点击New Remote…,然后finish。Github的在线版本库就会将他的内容复制到本地,不出意外的话,会发现项目里面多一个Readme.Md的文件(也可能没有),这就是从Github的Repository上Pull下来的东西。
如果没有冲突,现在再按照上文Push的步骤应该可以走的更远一些,得到第二个错误~~
第二个错误

5.2 错误二:401 Authorization Required

Git Problem 2
Google结果表明,https://www.eclipse.org/forums/index.php/t/1081631/,这是一个已知的Bug,并且经国外大神完善,解决方案是:安装一个新的插件, EPP Marketplace Client。
Git Problem 2 Solution
重启Eclispe后,重新按照步骤Push,经本人验证解决了问题。

现在登录到Github上的repository中,可以看见Push过来的项目文件了。
Eclipse Git Finish

Done!

参考文献:

1、http://blog.csdn.net/yanzi1225627/article/details/12885317
2、http://blog.csdn.net/hhhccckkk/article/details/10458159
3、https://www.eclipse.org/forums/index.php/t/1081631/

1 0