eclipse使用egit插件
本来想用myeclipse,奈何试过网上所列的常用方法,都无法成功安装egit插件。只得转到eclipse。话说eclipse不仅是免费的,启动也较myeclipse更为迅速,安装插件也非常顺利。使用的是eclipse java IDE for web developers. version: kepler service release 1. Build id:20130919-0819
1. 安装egit
eclipse -> help -> eclipse Marketplace,在弹出的页面上的find框内输入egit,回车。选择EGit - Git Team Provider X.X.X,点击install。图1.1中,因为eclipse上已经安装了egit,所以展示的是update和uninstall

图1.1 egit插件安装
2. 配置egit (以下内容来自:http://www.gogogogo.me/development/eclipse-egit-git.html 这是我实践出来的最靠谱的方法。其他的文章,实践时都有各种问题……)
Git是当前最流的行分布式版本控制工具,而作为最主流的(没有之一)Java开发工具Eclipse以插件的形式对其提供了支持,那就是Egit。这里介绍一下我使用Eclipse的EGit管理Git远程项目的过程。当然,这可能不是最佳实践,但是通过我的验证这么做的确是没有问题的。网上得来终觉浅,绝知此事要躬行。
- 预备:
- 系统环境:Windows XP/Windows8.1
- 安装Eclipse:怎么做不用我再说了吧
- 安装 Egit:我这里使用的是Eclipse Kepler,已经自带EGit插件,无需安装。(我的kepler没有自带egit) Kepler 之前的版本可以自行安装 Egit插件,你可以通过Eclipse Marketplace、Install New Software、手动下载使用link、或者直接放进插件目录等方式安装。
预备工作完成,不需要再安装任何东西了。下边就真正亮出招式了,看好咯。
- 第一板斧:配置环境
- 配置Git(Egit):
- 设置Git HOME:需要在系统环境变量中为Git提供一个HOME路径。这个目录将用于保存git的配置文件和默认的本地仓库。我这里使用的是F:\GitHome,当然你可以设置系统盘的任意路径。

- 配置git用户信息:在eclipse 》Preferences 》Git 》Configuration 选项中配置git用户信息,在这个界面上你就可以看到eclipse使用了之前设置的HOME来保持git配置信息。在界面上选择Add Entry… 添加用户信息key: user.email/Value:good-long@qq.com、Key:user.name/Value:大漠真人,当然你要换成你自己的信息。

点击Apply完成配置。这里Git的配置就算完成了。(Location这里是email和name等信息保存的文件路径。看样子是要改为%HOME%下。实践时发现这里无法输入。于是点击open,在文件中修改保存。再次打开该页面,发现文件位置是对了,但是报错。说手动输入apply后,再回到此页面会报错。说cannot read file F:\GitHome\.gitconfig org.eclipse.jgit.errors.ConfigInvalidException。点击open打开文件后,删除[user]前的文件路径信息,就不会再有报错了。我想这里可能是一个bug。)

- 特别说明:Egit就是git的一个客户端,我这里不需要再安装任何其他的Git客户端了,看到网上很多人写这里还要安装诸如msysGit、TortoiseGit等GUI客户端,这些都是谣传。如果你确实需要的话,你可以安装。
- 配置SSH:
- 配置SSH Home路径:当然这里还是使用Eclipse自带的SSH2工具,网上还是有很多谣传:Eclipse的SSH不要用,要是Git GUI的SS命令行。SSH默认的Home在user/.ssh路径,为了方便管理,这里我使用了GitHome路径:F:/GitHom/.ssh。这里你依旧可以使用系统任意路径。

- 生成RSA密钥对:接下来使用Key Management 》Generate RSA Key… 生成SSH密钥,输入密码,这个密码将在使用密钥时使用,点击Save Private Key保存密钥,这时将在SSH Home下产生两个文件:id_rsa、id_rsa.pub。id_rsa是SSH密钥对的密钥,不能泄露,而id_rsa.pub是SSH的公钥,用途在下文介绍。在上一步界面中的private keys中选择这里的id_rsa文件。 点击Apply,SSH配置 完成 。

到这一步,本地配置全部完成,看第二招吧!
- 第二板斧:管理仓库
- 创建仓库:这里以http://git.oschina.net的远程仓库管理为例,你同样可以管理http://github.com、http://gitcafe.com的仓库。
- 添加SSH公钥:首先你要把你的SSH公钥添加到你git托管服务网站的SSH公钥中,SSH公钥就在.ssh/id_rsa.pub文件中。复制粘贴进去就可以了。特别注意的是:这里是用户资料下面的SSH公钥,不是项目下的部署公钥。项目的部署公钥只有读权限,没有写权限,这意味着你可以pull项目,不能push。如果这里弄错,将在push时报错:" push not permitted ",当然,这都是后话。

- 创建项目:使用git@osc菜单栏的“+”创建一个项目,填写项目信息,创建项目即可 。特别说明:“ .gitignore”文件不能空着,不然将在你clone项目的时候报错:“does not appear to be a git repository”!

- clone项目:首先复制项目的ssh地址:git@git.oschina.net:coxapp/Hello.git,然后再eclipse的git仓库管理面板clone项目到本地。

eclipse的git仓库管理面板可用window 》show view 》other 》Git 》Git Repositories 显示出来。
点击Clone a Git repository,会自动把复制的Hello项目的git信息填充到窗口中,直接点击Next。

输入生成rsa密钥时的密码,一路Next到Finish就OK了。(我实践时没有遇到这一步)

这里我们将在git仓库管理面板看到clone到本地仓库的项目信息!

至此,第二板斧就耍完了,哈哈!
- 第三板斧:管理代码
- 导入项目:File 》Import 》Git 》Project from git 》Next 》Existing local repository 选择本地的Hello项目,一路Next就完成了。
- 特别说明:如果是新建的项目,那么项目是没有初始化成eclipse项目的,在导入的时候只能导入为 generla project,然后通过项目右键 Configure 》Convert to *** 转化成你所需要的项目类型(为什么我的convert to选项里没有java project呢?)。如果已经是eclipse项目,选择Import existing project 导入即可。也可以使用 File 》Import 》Git 》Project from git 》Next 》URI 使用git项目的地址直接导入。

- push更新:上一步中从本地仓库把Hello导入并转化成java项目后,项目已经发生更新,可以使用项目右键 Team 》Commit 提交更新。使用 Team 》 Remote》Push 将更新推送到osc服务器上去了。这时就可以在http://git.oschina.net/coxapp/Hello 页面看到项目的更新了。
- pull更新:git是一个版本控制工具,为的是多人协作,每次push的时候我们先pull一下,看有没有其他人更新过代码。
- 最后说明:在上面过程中没有提到的,按照默认提示做就ok,还有怎么push和pull的详细内容以及更多git操作,给个网址http://wiki.eclipse.org/EGit/User_Guide 自己探索吧。
该push push,该pull pull,该推推,该拉拉,推拉推拉,别想歪了,哈哈,三板斧耍完了,怎么样,给力不!
参考资料:http://wenku.baidu.com/link?url=8q4xBT2rr5Gc4V8iVEjcofqgkVqnOUVISq-KplR2xh2m9kzEHHmZonQC6RlTSepaqFYF3TCwgjj8Ct0cxNW4tIuGenSJfiFIIdA47meYb-u
eclipse使用egit插件的更多相关文章
- eclipse中egit插件使用
这篇文章当时制作有点粗糙,建议阅读升级版:eclipse中egit插件使用--升级版 使用git作为项目的代码管理工具现在是越来越火,网上有各种各样的文章.博客.讨论,其中以命令行居多.使用eclip ...
- 【转】eclipse中egit插件使用
原文网址:http://my.oschina.net/songxinqiang/blog/192567 eclipse和git这个两个工具的使用人数都是相当多的,在eclipse里面也有egit插件来 ...
- Eclipse下egit插件的使用
接触GIT已经很久了,但碰到的公司一直都在使用SVN,并因为各种理由拒绝换成GIT.今年换了份工作,乘着搭建公司新框架和项目的机会,总算在正式项目上使用了GIT.GIT的服务器直接就用了https:/ ...
- eclipse中egit插件使用(转)
1.eclipse和egit版本 eclipse使用的是kepler的SR1版,egit就是自带的那个版本,要详细的话,我就也只能把文件名贴出来了:eclipse-jee-kepler-SR1-win ...
- eclipse 安装egit插件
一.Eclipse上安装GIT插件EGit Eclipse的版本eclipse-java-helios-SR2-win32.zip(在Eclipse3.3版本找不到对应的 EGit插件,无法安装) E ...
- Eclipse的egit插件冲突合并方法
Eclipse有一个git的插件叫EGit,用于实现本地代码和远程代码对比.合并以及提交.但是在本地代码和远程代码有冲突的时候,EGit的处理方案还是有点复杂.今天就彻底把这些步骤给理清楚,并公开让一 ...
- eclipse下载egit插件,实现代码git同步问题
1.使用egit后,怎样查看历史log信息? : Team -> Show in history可以查看版本历史提交记录 2.每次代码提交前,先fetch,再merge. 先fetch获得最新代 ...
- EGit插件安装(附Eclipse版本对应表)
最近eclipse添加egit插件,通过网上的方法下载安装后不显示git选项.通过官网了解到egit的版本对应相应的eclipse版本. 如果你安装了最新版本,需要先卸载重启eclipse后重新安装兼 ...
- 使用EGit插件将Eclipse现有项目分享到git@osc
. . . . . 程序员一定要养成使用版本管理工具的好习惯,即使是自己一个人开发的项目也要加入到版本管理工具中.使用版本管理工具主要有两个好处:一个是更好的管理多个副本,这个优势不用说了:另一个就是 ...
随机推荐
- Mac安装homebrew安装到指定目录
第一种直接安装在/usr/local目录下 mac 打开终端输入 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebr ...
- JDK居然还有Server和Client模式
JDK这货居然还分Server和Client版本,但经过观察,据说从1.7+版本开始这两者运行的区别已经逐步减少了.所以接下来的分析没啥意义. 参考: http://www.oracle.com/te ...
- JAVA读取XML,JAVA读取XML文档,JAVA解析XML文档,JAVA与XML,XML文档解析(Document Object Model, DOM)
使用Document Object Model, DOM解析XML文档 也可参考我的新浪博客:http://blog.sina.com.cn/s/blog_43ac5543010190w3.html ...
- 【scrapy】使用方法概要(一)(转)
[请初学者作为参考,不建议高手看这个浪费时间] 工作中经常会有这种需求,需要抓取互联网上的数据.笔者就经常遇到这种需求,一般情况下会临时写个抓取程序,但是每次遇到这种需求的时候,都几乎要重头写,特别是 ...
- 【Go入门教程6】struct类型(struct的匿名字段)
struct Go语言中,也和C或者其他语言一样,我们可以声明新的类型,作为其它类型的属性或字段的容器.例如,我们可以创建一个自定义类型person代表一个人的实体.这个实体拥有属性:姓名和年龄.这样 ...
- [原] corePlot 类库与iOS自带类库使用方法对比(很多开源代码都有这个特点)
——人类最倚重的是自己的“以往经验”.—— 我们直接看一下在corePlot 类库和iOS自带类中为一个控件设置文本显示格式的实现. * corePlot 类库中,为一个对象设置标题显示格式 , ...
- 转 UITextField
//初始化textfield并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, ...
- 浅谈Android RecyclerView
Android RecyclerView 是Android5.0推出来的,导入support-v7包即可使用. 个人体验来说,RecyclerView绝对是一款功能强大的控件. 首先总结下Recycl ...
- FitLayout
<HTML> <HEAD> <TITLE>布局</TITLE> <link rel="stylesheet" type=&qu ...
- pytest文档15-使用自定义标记mark
前言 pytest可以支持自定义标记,自定义标记可以把一个web项目划分多个模块,然后指定模块名称执行.app自动化的时候,如果想android和ios公用一套代码时, 也可以使用标记功能,标明哪些是 ...