使用Eclipse Egit与码云管理你的代码
总体流程:
- 建立远程仓库
- 建立本地仓库并与远程仓库关联
- 将Eclipse中的项目提交到本地仓库并进而push到远程仓库
一. 配置Eclipse EGit
图解Eclipse中安装及配置EGit插件中的配置EGit
user.name配置为你的学号,user.email配置为你的邮箱。
二. 建立远程仓库,将本地仓库与远程仓库相关联
1. 注册、登录、建立项目java学号
首先点击页面上方的+来创建项目。注意:下面的初始化暂时先不要选。

项目创建后,就在码云上建立了远程仓库。然后点击复制获取远程仓库的url

2 将Eclipse中的项目与码云上的远程仓库建立关联
Eclipse菜单Window-Show View-Other,输入Git Repositories,打开相应视图。如下图所示:

该图显示本机上已有多个代码仓库,我们现在需要新创建一个本地仓库与在码云上的远程仓库建立关联。
在该视图下ctrl+v,显示下图,输入码云上的邮箱与密码:

在接下来的页面更改Directory,选定一个本地仓库的位置:

本地仓库创建好以后,显示如下,我这里有多个本地仓库,如果你还没有建过本地仓库,这里应为空:

到这部已经将本地仓库与远程仓库建立了关联。接下来要将Eclipse中的项目提交到本地仓库并进而提交到远程仓库。
右键点击Eclipse中的项目,依次选择Team-Share Project-Git,选择你创建的仓库,点击Finish:

三. 提交(commit)、克隆(clone)、推(push)
1 提交代码到远程仓库
现在在项目可以提交(commit)到本地仓库,并进而push到码云上的远程仓库。
右键点击项目,依次选择Team-Commit,在下面的界面中输入Commit message、选择相应的需要提交的Files,然后
点击Commit and push(提交到本地仓库并且push到远程仓库),如果选择Commit仅仅提交到本地仓库。

提交的过程中如果出现错误,可以先提交(Commit)到本地仓库,然后再将本地仓库'push'到远程仓库。
push到远程仓库的方法: 右键点击项目,依次选择Team-Push branch...。如果成功推送,码云上将会有相应文件,如图:

以后如果对代码有修改,需要'Commit and push'才能将代码提交到远程仓库。
在宿舍可将远程仓库中的代码clone到本机,详见下面参考资料。 将整个项目clone下来后,以后使用pull就可以将远程仓库的代码拉到本机的Eclipse项目中。
使用重要提示:
使用Git来管理你的代码以后,当你在本机Eclipse项目中开始编写新的代码之前,一定首先要将远程仓库的最新代码pull到本机,这可以降低冲突发生的可能。
2 从码云将项目clone到你的电脑
假设你的电脑没有码云上的项目,现在需要将码云上的项目clone到你的电脑,步骤如下:
- 复制码云上相关的url
- Eclipse上,依次点击
Window-Show View-Other,添加Git Repositories视图 - 在该视图上
ctrl+v,将码云上的项目clone到本地。
现在本地仓库与远程仓库(码云上的仓库)有了关联。但在Eclipse中还没有项目与该本地仓库关联。 - 将本地仓库中的项目导入(import)到Eclipse中
- 依次点击
File-Import,选择Git-Projects from Git - 选择
Existing local repositories(现有的本地仓库),然后选择相关的项目,根据提示一步步操作,最终建立好项目。
- 依次点击
3 将项目中的代码的改动与新增文件提交与push到码云仓库(远程仓库)
原理描述:
经过上述的步骤,你已经将Eclipse中的项目与本地仓库相关联,并进而和码云上的远程仓库相关联。
现在你可以将项目中代码的改动提交(Commit)到本地仓库,并进而push到远程仓库。
注意:Commit仅仅是将代码提交到本地仓库,你的代码改动仅仅存储在本地上。一定要push,才能将本地仓库的内容推到远程仓库。
具体步骤
假设你在Eclipse项目中添加了Main1.java Main2.Java,修改了Main.java,见下图。这些文件并没有放到本地仓库中,而只是存储在Eclipse项目中。

现在发现Main2.java写错了,不需要提交,而只需要提交Main1.java和Main.java。
右键点击项目,依次选择Team-Commit,会出现下图:

选中Main1.java和Main.java,右键点击选择Add to Index,将文件加入index区,在右侧的Commit Message输入相关的提交信息,如添加了Main1.java,主要完成题目1,改成了Main.java中导致程序崩溃的bug。
然后点击Commit and Push,就可以将这些改动Commit到本地仓库,并进而Push到远程仓库。如果仅点击Commit,则只是将代码提交到本地仓库。
四. 实验室、宿舍之间代码同步最佳实践
不要为每次实验建立一个项目,然后同步到仓库中。这样过不了多久,你的仓库中就堆满了项目。同步起来不是很方便。
推荐只建立一个项目,项目名需包含你的学号,每次实验的代码放到不同的包(package)中。
比如,第1次实验放到ex01包,如下图所示:

如果为了方便区分1次试验内不同题目的代码,可以进一步将其放入ex01的子包ex01.birthdate这样的包中
这样管理起来更加方便,减少仓库不同步的可能。
参考资料
命令行下使用Git见下面两篇文章
Git与码云(Git@OSC)入门-如何在实验室和宿舍同步你的代码(1)
Git与码云(Git@OSC)入门-如何在实验室和宿舍同步你的代码(2)
其他参考资料:
使用Eclipse Egit与码云管理你的代码的更多相关文章
- Git从码云或者Github 克隆代码到本地
Git从码云或者Github 克隆代码到本地 1.下载安装Git,傻瓜式下一步下一步即可... 2.配置Git: 2.1.选择你要clone到本地的路径:右键--->$ Git Bash Her ...
- 从码云把之前的代码git push 回IDEA 对IDEA里的文件进行简单操作
前情提要:我的IDEA里的项目之前已经和码云连接成功可以上传.但我直接在电脑文件夹里对文件进行重命名.剪切.粘贴等操作之后IDEA对操作后的文件不识别,无奈之下我将码云上之前的代码推回重新新建了项目. ...
- Git同步更新操作GitHub和码云仓库上面的代码
一.前言 问题: 小编在生活中,一般都是将代码保存到github上,但由于国内的码云仓库确实速度比github快很多,用起来也很方便,于是后来就慢慢转码云了,当然小编在github上的代码也不想放弃更 ...
- 在Windows下使用Git+TortoiseGit+码云管理项目代码
1. 安装Git 下载地址:点击打开链接 安装指南:默认选项即可 2. 安装TortoiseGit 下载地址:点击打开链接 安装指南:点击打开链接 3. 在码云创建账号, ...
- windows 系统使用 git 和码云管理代码(本地已有项目)
1. 为本地项目创建本地仓 找到项目所在的根目录(目录下有解决方案那个),右击目录,点击右键菜单中的“Git Bash Here”(前提是你的电脑已经装了Git,我用的是TortoiseGit) 然后 ...
- 使用TortoiseGit+码云管理项目代码
1.下载安装msysgit. 2.下载安装tortoisegit. 3.创建ssh密钥. 开始–所有程序–TortoiseGit–PuTTYgen 生成方法:点击“Generate”后,鼠标在key下 ...
- idea教程--如何使用码云管理代码
1.安装Gitee插件 由于我已经安装过了,请参加白色背景的图 2.idea配置git 3.配置码云账号 4.配置ssh秘钥(注意:如果之前安装git已经配置过了可以跳过此步) (1) 生成SSH秘钥 ...
- 码云 VS首次提交代码报错:failed to push some refs to 'https://gitee.com/Liu_Cabbage/ASP.NET-MVC-QQ-Connect.git'
打开命令提示符: 执行合并命令: git pull --rebase origin master 最后总结: 1.多为第一次提交代码,本地和码云仓库不一致,README.md文件不在本地代码目录中 2 ...
- eclipse中如何向开源中国(码云)上传代码
摘要 本文将介绍如何将本地的项目提交到开源中国上去,过程比较详细,实现起来很简单.由于自己也算是一个新手,所以没有做过多的解释,只是单纯的描述了该如何去做. 1.在开源中国上面新建一个空项目 到这 ...
随机推荐
- ssl Diffie-Hellman弱密码问题
title: ssl Diffie-Hellman弱密码问题 date: 2017-08-16 16:41:55 categories: 网络安全 tags: ssl Diffie-Hellman - ...
- 【leetcode】92. Reverse Linked List II
Reverse a linked list from position m to n. Do it in-place and in one-pass. For example:Given 1-> ...
- expungeStaleEntries函数解析
1 /** * Reference queue for cleared WeakEntries */ // 所有Entry在构造时都传入该queue private final ReferenceQu ...
- java中方法传值小知识解析
1.java语言参数之间只有值传递,包括按值调用和按引用调用. 一个方法可以修改传递引用所对应的变量值,而不能修改传递值调用所对应的变量值. 按值调用:包括八大基本数据类型都是按值调用.传值的时候,也 ...
- Linux(Fedora) 安装 Oracle XE Database
Fedora 安装 Oracle XE Database Fedora 20Oracle XeOracle VM VirtualBoxFedora 安装oracle 数据库 环境: Oracle VM ...
- nGrinder 简易使用教程
背景 性能压测工具之前使用的是jmeter,这次说的是nGrinder,先直接搬运两者之间的比较 比较点 JMeter nGrinder 结果 实现语言 Java Java = License Apa ...
- Struts2学习笔记(四)——result结果类型
当Action类的方法处理请求后,会返回一个字符串(逻辑视图名),框架根据这个结果码选择对应的result,向用户输出,所以需要在struts.xml提供<result>元素定义结果页面, ...
- linux shell 之在线文本编辑sed
sed命令 文件编辑 sed是一种文本编辑命令,通过终端读取文件数据到缓冲区,然后通过sed编辑文本,在输出到指定的文件,sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用 ...
- SpringMVC简单入门
SpringMVC简单入门 与大家分享一下最近对SpringMVC的学习,希望本文章能对大家有所帮助. 首先什么是SpringMVC? Spring 为展现层提供的基于MVC设计理念的优秀的Web框架 ...
- 利用js实现禁用浏览器后退
原博主链接为:http://blog.csdn.net/zc474235918/article/details/53138553 现在很多的内部系统,一些界面,都是用户手动点击退出按钮的.但是为了避免 ...