推荐一个属于自己的代码控制工具(或者是叫代码托管工具)——GitHub

  提起代码控制工具,很容易想到的就是CVS,SVN。这也是开发团队常用的。但如果想管理只属于自己的代码呢?那它们就不太合适了——因为需要一台服务器啊。

  分享一个好的工具(网站)—— GitHub。它是一个可以上传代码的网站,也有客户端和插件。既可以在本地修改然后上传,也可以直接在网上修改然后同步到本地。这使得管理起自己的代码来更方便。

  这篇文章主要介绍它的Eclipse的插件(EGit)的使用。

  当然,如果你不喜欢插件的方式,你可以使用它的桌面程序。

  不多说了,开始吧!

· 网络部分

1、注册账号

  首先,需要注册一个账号。https://github.com/

2、创建一个资源库

  注册完成后,登录。

  在主界面的右下角有这样一个区域,如图。点击 New repository,创建一个新的库。

  在 Repository name 栏里写上新建库的名字,如“HelloWorld”。其它可写可不写。等你熟悉了再去深究吧。点击下方的 Create repository 按钮。

  OK,网页部分完成了。看看本地需要哪些设置吧!

· 本地部分

1、安装Eclipse插件  

  (1)首先,下载Eclipse的插件

    回到主页面,在页面的下方,会有这样一个区域,如图。点击 Clients 下的 GitHub for Eclipse 。(你也可以看到,有“GitHub for Windows”,那是Windows的桌面程序,和SVN的桌面程序差不多,也很好用的。感兴趣的可以看一下。上传一些文件还是很方便的。如果不是用Eclipse作为开发工具的话,这个就挺好用。)

    在下载页面(http://eclipse.org/egit/download/),选择中间部分的这个链接,如图。其他的那些URL是给Eclipse的在线安装使用的。Eclipse在线安装插件的方式不太好用。建议将插件下载下来,手动安装。

  (2)安装。

    将下载的插件解压后,复制到${MyEclipse}\MyEclipse 10\dropins目录下。(注:Eclipse不同的版本,目录可能不一样,安装插件的方式也可能不一样。)

  (3)一些设置

    重启MyEclipse。点击 工具栏 > Preferences > Team 下多了一个 Git 的分支。

    修改一下“Default repository folder”的值。这是远程的库在本地的一个路径。笔者选择的是MyEclipse的工作目录。

2、创建一Java项目,上传

  (1)新建项目

  接下来新建一个HelloWorld的项目吧。这个就不多说了。

  (2)上传

  项目建好后,选中项目, 右键 > Team > Share Project 。你会看到这样的提示,如图:

  提示缺少环境变量 HOME 。少了咱就加呗!

  右击 我的电脑 > 属性,点击选项卡 高级 > 环境变量 > 系统变量 > 新建 ,如图。在 变量名 中输入 HOME  变量值 建议和上面的“Default repositoryfolder”一样。点击 确定 

  重启Eclipse。

  重复上一步操作—— ShareProject ,这次应该不会再出现上次的提示。在出现的界面中选中 Git ,点击 Next 。在如下的界面中,在红色标注的地方打 √ ,选中项目后,点击 CreateRepository ,点击 Finish 

    选中项目,右键 > Team > Commit ,出现如下图的界面。输入提交的备注信息(Commit message),选中要提交的文件,点击 Commit 

  (注:如果你只是要上传文件,那个“.project”的文件可以不提交,那是Eclipse的一个配置文件,主要作用就是表明这个文件是一个Project。当你用另一台机器下载这些代码时,如果有这个文件,可以用Eclipse直接导入,Import Project)

  如何提交到GitHub账户下呢?

  选中项目,右键 > Team > Remote > Push ,出现如下界面。

  回到GitHub的主页面,点击新建的库“HelloWorld”,在浏览器的右侧出现如下片段,如图。在 Code 栏的最下方提供了不同的下载方式。笔者选择 HTTPS ,复制后面的地址,粘贴到上图中的“URI”栏里。

  User/Password就是你的GitHub的账户和密码。“Storein Secure Store”打 √ 。点击 Next ,出现下图界面。

  a、 选择 Source ref 

  b、 点击 Add AllBranches Spec 

  c、  Force Update 一定要选中。如果不选中,下一步就会报错。这个错在GitHub的Help里可以搜索到,但我没怎么看懂。只知道选中“Force Update”可以避免这个错误。

  d、 点击 Finish 

OK,到你的GitHub的主页面看一下,HelloWorld库里是不是多了些文件?

3、同步

  再看一下如何同步吧!

3.1、 本地修改,上传

  在原先的代码上加上如下2行。

  和上传整个项目时相似,简单说下步骤,不再赘述。

(1)Commit

(2)Push

  在GitHub的主页面,在HelloWorld库里面找到“HelloWorld4GitHub.java”文件,看一下新加入的代码是不是已经更新到库里面了。

3.2、在页面上修改,同步到本地

  在页面上点击 Edit 按钮,加入如下代码

(1)在下方的 Commitmessage 栏里输入你的备注信息,如“Add from Web”

(2)点击 CommitChanges 按钮

  页面上修改完成。

  如何更新到本地呢?

  选中项目,右键 > Team > Pull ,你会发现代码已经更新下来了。

  是不是很棒?!

  以后有什么经典的代码或是想自己想收藏的代码,就上传到GitHub吧!

  不仅可以和其他人共享讨论,而自己也可以随时查看编辑(当然前提是要能联网)。

  赶快试试吧!!

【官方参考文档:】http://wiki.eclipse.org/EGit/User_Guide

(本想介绍下如何将GitHub中已有的库下载到本地,但发现这篇文章已经很长,就另起了一篇,GitHub的使用(下)—— 如何下载一个已存在的 Repository

GitHub的使用(上)—— 创建和更新的更多相关文章

  1. 上传及更新代码到github(以及如何在vscode上提交自己的代码)

    上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo "# Test" >> ...

  2. 如何使用 Jenkins、GitHub 和 Docker 在 Azure 中的 Linux VM 上创建开发基础结构

    若要将应用程序开发的生成和测试阶段自动化,可以使用持续集成和部署 (CI/CD) 管道. 本教程介绍如何在 Azure VM 上创建 CI/CD 管道,包括如何: 创建 Jenkins VM 安装并配 ...

  3. 在github上创建自己的代码仓库

    git用了很久了,github也用很久了,但一直都是使用别人的项目, 最近想把自己写的一些代码放到自己的帐号上去 以为就是很简单的代码推送,真正做一次时候才发现,原来坑还不少呢, 就把这次的经历记录一 ...

  4. 关于如何在github上创建团队开发环境

    今天想写个如何在github上创建团队开发环境的博客.送给那些还不知道如何在github上创建团队开发环境的开发人员. 1.首先,当然你要有个github的账号.具体怎么注册我这里就不说了.可以上gi ...

  5. 在github上创建新分支

    在github上创建仓库: Create a new repository on the command line touch README.md git init git add README.md ...

  6. 在GitHub上创建上传下载开源项目代码

    1.注册GitHub帐号,创建GitHub项目代码仓库 1.1.注册GitHub帐号 在使GitHub之前,需要先登录其官网注册一个免费使用的账号.登录 https://github.com/join ...

  7. github git 在GitHub上创建项目并将本地项目push到网站上

    众所周知,git是与svn类似的版本控制系统,git的去中心化.分布式等的优点,在不久将来用户量大有可能超过svn, 常见的代码托管网站有GitHub,coding.net, gitee.com 码云 ...

  8. 在GitHub上创建代码仓库

    目前在GitHub上管理托管带代码的人越来越多了,今天也尝试了一次,顺便记下来,备用. 首先是在GitHub上创建一个代码仓库,创建完之后,GitHub上会有提示,这时进入项目目录执行下面的命令,顺便 ...

  9. 使用git在github上创建新工程

    这段时间进经常会忘记如何在github上同步工程,于是又得查资料,查参考书,浪费了很长时间,因此有了感触,写几篇有关此类问题的篇章! 这是老手新手都十分容易犯的错误,就是在创建一个新github项目或 ...

随机推荐

  1. Codeforces Round #354 (Div. 2) D. Theseus and labyrinth

    题目链接: http://codeforces.com/contest/676/problem/D 题意: 如果两个相邻的格子都有对应朝向的门,则可以从一个格子到另一个格子,给你初始坐标xt,yt,终 ...

  2. BZOJ1565 植物大战僵尸

    AC通道:http://www.lydsy.com/JudgeOnline/problem.php?id=1565 这题看上去并不会做,结果又是最大权闭合子图的裸题. 于是就去看了一发论文,明白建图的 ...

  3. Asp.net 导入Excel(服务器不带Office)

    #region 把excel文件转换为DataSet. /// <summary> /// 把excel文件转换为DataSet. /// </summary> /// < ...

  4. 服务器NPC的ID如何分配的

    服务器ID分配包括NPC,Monster,Pet的ID分配都是调用allocateUID然后自动保存的ID加一,pet说是通过玩家的ID移位获得的,调试一下发现还是调用allocateUID,如果通过 ...

  5. 操作集合的工具类Collections

    1       操作集合的工具类Collections Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类里提供了大量方法对集合元素进行排序.查询和修改等操 ...

  6. HDU-2604_Queuing

    题目:Problem Description Queues and Priority Queues are data structures which are known to most comput ...

  7. 关于java调用linux shell 的问题

    问题的提出: shell脚本要做离线的数据处理任务 java调用脚本,将这种处理任务封装成webservice 特点: shell处理单个时间长 每次要处理文件量大 这里目前只做调用分析: 原来的: ...

  8. MVC模式在游戏开发的应用

    原地址: http://www.cocoachina.com/gamedev/2012/1129/5212.html MVC是三个单词的缩写,分别为:模型(Model).视图(View)和控制Cont ...

  9. 表单很多数据项录入的时候,提交controller发生异常,数据回显。

    1.添加的情况(Model传递Form Data) request.getSession().setAttribute("car", car); //抛出异常的时候,数据回显. 2 ...

  10. iOS自定义发送消息输入框

    简单的封装了一个,免得麻烦直接初始化就可以用了 ,有其他需求该里面参数就行了 WJEasyInputTextView.h , CGRectGetHeight([UIScreen mainScreen] ...