Myeclipse+Git
- EGit安装
MyEclipse已经集成了Git插件EGit,在window->Preference里搜索git可以看到。
|
如果没有,安装方式为Help->Install From Catalog->搜索Git,找到Eclipse EGit Eclipse Git Team Provider,安装即可。或者install From site地址为http://download.eclipse.org/egit/updates
安装后在New新建项目时可以搜索到Git目录。可通过Import,导入Git版本库。
- 建立版本库
如果第一次使用,新建项目,右键工程项目Team->Share Project,选择Git,点击Next
|
在Configure Git Repository窗口,点击Create,新建一个本地仓库
|
点击finish后,可以看到项目结构图如下:
|
刚创建的本地版本库,问号表示git还没有监控它,处于untracked状态,新入库的文件都处理untracked状态。
打开git视窗查看,git staging状态如下:
|
点击Commit按钮后,弹出如下错误提示框:
|
需要先将项目添加到暂存区,即添加到Index。
|
Git staging状态如下:
|
这样就把项目中发生修改的文件都添加到暂存区,等待被提交,也可以只把需要提交的文件添加到暂存区,如下:
|
Add后显示如下:
|
提交:
提交之前要填写提交信息,至少自己要看得懂,这样在版本回退的时候根据信息就可以找到要回退的版本。
|
提交之后,文件前的问号和”>”符号也不见了,工程结构如下:
|
提交之后,仓库右键show in->history,可以看到有一条记录,最左边一列是版本ID。
- 提交到远程版本库
第一种通过Git Staging窗口的Commit and Push按钮提交。
|
第二种通过右键项目,点击Team->Remote->Push
|
如果是首次提交到远程版本库,弹出如下窗口:
|
最后点击Next按钮
|
自动选择了master,最后点击Finish按钮。然后你就可以上码云上去看是否有上传成功了。
|
|
提示是否需要密码提示,如果选择是的话会弹出设置窗口,如果不需要可以选择No。
如果不是首次提交到远程版本库,如下图:
|
点击Next,如下图所示:
|
错误:rejected –non-fast-forward
错误原因:文件冲突,本地的代码和远程Repository中的文件个数不一致(即远程Repository中存在本地项目中不存在的文件)或本地得项目不是在远程Repository代码的基础上修改的。
解决办法:
将远程Repository中的代码更新到本地,然后再进行Push,即可完成代码提交。
再重新进行一次push即可。
|
这里我们使用码云来做测试:
1、 创建项目
|
创建项目成功之后显示如下页面:
|
2、
- 检出项目
第一种:使用MyEclipse的Import功能,选择Projects from Git
|
点击Next,出现如下图窗口:
|
点击Next,出现如下窗口:
|
如果选择Import existing Eclipse project,出现如下窗口:
|
如果你选择的是Import as general project,出现如下窗口:
|
如果选择Import using the New Project wizard,出现如下窗口:
|
第二种:在Git Repositories视图中找到需要导入的项目,右键导入到当前工作空间中。
- 分支管理
创建和切换分支:
方法一:右键项目,Team->Switch To->New Branch,创建新的分支,或切换到其他分支。
|
点击Finish之后,当前工程的分支就变成了新建test分支,如下工程结构图:
|
接下来把新建分支提交到远程版本库,选中项目,右键->Team->Push to Upstream:
|
在弹出框中,填写项目的git路径,点击Finish。
|
登陆码云,验证分支:
|
提交代码到远程test分支:
|
点击Next按钮,出现如下窗口:
|
此时本地代码仓库与远程代码仓库的分支test相互关联。并且都是基于master分支了。再次提交代码,就可以在test分支上提交代码了。而不是master分支上直接提交代码。
然后你自己也可以基于test 分支拉取自己的分支,每一个分支做一块任务。
聪明的爱思考的你一定回想了:我新建了分支test,那么以后提交都提交到test分支上。那么master分支上的代码是不是就不能获得最新的提交代码了呢?答案是:master分支不能获得最新代码。那提交到test分支的代码,如何进入到远程master分支呢?
切换到master分支:
|
删除和合并分支:
在Git Repositories视图中,选中某一个分支,右键选择Delete或Merge进行分支的删除或合并。
当然,master分支不能删除。
|