GitHub的使用(上)—— 创建和更新
推荐一个属于自己的代码控制工具(或者是叫代码托管工具)——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的使用(上)—— 创建和更新的更多相关文章
- 上传及更新代码到github(以及如何在vscode上提交自己的代码)
上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo "# Test" >> ...
- 如何使用 Jenkins、GitHub 和 Docker 在 Azure 中的 Linux VM 上创建开发基础结构
若要将应用程序开发的生成和测试阶段自动化,可以使用持续集成和部署 (CI/CD) 管道. 本教程介绍如何在 Azure VM 上创建 CI/CD 管道,包括如何: 创建 Jenkins VM 安装并配 ...
- 在github上创建自己的代码仓库
git用了很久了,github也用很久了,但一直都是使用别人的项目, 最近想把自己写的一些代码放到自己的帐号上去 以为就是很简单的代码推送,真正做一次时候才发现,原来坑还不少呢, 就把这次的经历记录一 ...
- 关于如何在github上创建团队开发环境
今天想写个如何在github上创建团队开发环境的博客.送给那些还不知道如何在github上创建团队开发环境的开发人员. 1.首先,当然你要有个github的账号.具体怎么注册我这里就不说了.可以上gi ...
- 在github上创建新分支
在github上创建仓库: Create a new repository on the command line touch README.md git init git add README.md ...
- 在GitHub上创建上传下载开源项目代码
1.注册GitHub帐号,创建GitHub项目代码仓库 1.1.注册GitHub帐号 在使GitHub之前,需要先登录其官网注册一个免费使用的账号.登录 https://github.com/join ...
- github git 在GitHub上创建项目并将本地项目push到网站上
众所周知,git是与svn类似的版本控制系统,git的去中心化.分布式等的优点,在不久将来用户量大有可能超过svn, 常见的代码托管网站有GitHub,coding.net, gitee.com 码云 ...
- 在GitHub上创建代码仓库
目前在GitHub上管理托管带代码的人越来越多了,今天也尝试了一次,顺便记下来,备用. 首先是在GitHub上创建一个代码仓库,创建完之后,GitHub上会有提示,这时进入项目目录执行下面的命令,顺便 ...
- 使用git在github上创建新工程
这段时间进经常会忘记如何在github上同步工程,于是又得查资料,查参考书,浪费了很长时间,因此有了感触,写几篇有关此类问题的篇章! 这是老手新手都十分容易犯的错误,就是在创建一个新github项目或 ...
随机推荐
- HDU 1532 Drainage Ditches 分类: Brush Mode 2014-07-31 10:38 82人阅读 评论(0) 收藏
Drainage Ditches Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- NYOJ-517 最小公倍数 TLE 分类: NYOJ 2013-12-29 14:49 253人阅读 评论(0) 收藏
#include <stdio.h> int main(){ int num[101]={0}; int result[21]={0}; int sum[101][21]={0}; int ...
- 父页面 调用iframe方法
父页面调用Iframe的方法 document.getElementById("tabIf0").contentWindow.Search(); Jquery 方式: ...
- iOS 面试题
1.Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么? 答:不可以,可以实现多个接口:category是分类,,一般情况下分类 ...
- HDOJ 3177 Crixalis's Equipment
Crixalis's Equipment Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- HDOJ 1220 Cube
CubeTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...
- Android 中多点触摸协议
http://blog.csdn.net/zuosifengli/article/details/7398661 Android 中多点触摸协议: 参考: http://www.kernel.org/ ...
- idHTTP访问百度
百度屏蔽了indy的客户端标识的 Mozilla/3.0 (compatible; Indy Library),把‘Indy Library’去掉就可以了. try IdHTTP1.Request.U ...
- POJ 1573
#include<iostream> #include<stdio.h> #define MAXN 15 using namespace std; char _m[MAXN][ ...
- linux查找有用日志常用技巧
对于高级测试人员来说.需要有快速定位问题的能力,而查看有效的日志就是其中有效的方法之一,然而服务器上的日志多如牛毛,如何快速从中找出所需信息非常重要,以下是我在工作中用到的查找日志的简单命令,希望对大 ...