Windows下使用GitHub

来源:互联网 发布:yum install mysql 编辑:程序博客网 时间:2024/05/01 03:57

GitHub是一个很不错的代码管理工具。我们修改完代码,只需几条命令,便能同步到github,这样partner便会将它clone到自己机子上。省了用U盘或qq、ftp的传输,非常适合团队开发。而且支持OpenSource。

这里通过演示一个项目(NITIAN-W)的开发来详细介绍一下windows下如何使用git。


1)创建github账户

登录https://github.com,只需用户名、注册邮箱和登录密码便能注册一个属于自己的github(之后需要到注册邮箱中进行确认,非常喜欢这种注册方式,简单而且安全)。之后便能通过github.com/用户名 的URL进行访问。


2)安装github windows客户端

客户端下载地址:https://windows.github.com/

安装后便会得到两个应用:



3)创建repository(仓库)

其实创建仓库,可以通过网页版github进行,不过这里通过上图的客户端GitHub进行创建。

登录后,点击create创建仓库。


仓库名一般和你的工程名一样(这样不会混淆),主要是选择你的工程目录。点击create后,便成功创建仓库,这时网页版github便会同步显示(但内容为空)。之后要将工程内容同步到网页版github上:


在客户端中打开刚创建的仓库,可以看到工程中的源码,这时在左侧的summary栏中随便写,之后点击下面的Commit to master:


点击右上角的publish,便将源码同步到了网页版github上(如下):



4)Git Shell操作

然后打开Git Shell,输入以下命令获得密钥:

ssh-keygen -C 'github的注册邮箱' -t rsa
一直回车后,根据提示的密钥生成目录找到id_rsa.pub文件,将其中的内容(公共密钥)注册到网页版github上:

点击框住的按钮,进行账户设置


打开SSH keys



点击Add SSH key


然后在title栏中随便输入,将密钥复制到key栏。


之后Git Shell中输入以下命令进行验证是否获得权限:

ssh -T git@github.com
应该出现:


Yes,我们可以通过shell来操作了。


5)同步工程

接下来我们在eclipse中修改了源码,但此时github并没有同步,通过Github客户端进行同步:

在Local栏中选中NITIAN-W这个仓库,点击框住的按钮


这是右边出现的文件就是我们修改过的,在左侧填上NITIAN-W(随便),然后点击下面的Commit to master


点击sync,进行同步



稍后,修改过的工程便同步到了github上。GitHub客户端中的History便记录着我们的每一次修改,类似版本迭代,可以进行回顾。


这样,每当我们修改完工程,只需打开客户端执行三步便能完成同步。那我们如何上传一些文件(项目文档和视频)到这个仓库中?


6)利用Git Shell上传文件

我们也可以用上面同步代码的方法,用客户端进行上传——将文档放在NITIAN-W的eclipse工程目录中(我们已经将NITIAN-W的eclipse工程目录与github中对应的仓库绑定了),然后同步。不过这里我们采用Git Shell的方式。

首先将github中的NITIAN-W仓库clone到本地


这时在当前目录下会出现NITIAN-W的工程目录,将项目API放在该目录中


在Shell中执行如下(注意:shell的目录要切到NTIAN-W中)




如果遇到git remote add出错,则如下执行:


另外,如果遇到git push NITIAN-W master出错:

  error:failed to push som refs to.......
则执行如下语句:

git pull NITIAN-W master
先将远程服务器github上的文件拉下来,再push上去(之后再执行git push NITIAN-W master)。

这样便上传成功



7)实时更新clone到的工程

还有一个问题,如果我们是clone别人的github上的仓库,那如何获取最新的版本?这种情形是我将修改的工程同步到了github上,我的队友此前已经clone了一份NITIAN-W工程到他自己的机子上,这是他需要更新的版本,那么如下执行:


这样他便拿到最新版本的工程,他可以为它添加文档,再上传到github上。


8)总结:

接着7),我的队友拿到新的工程,他将它部署到eclipse中,进行再次修改(实际上这个工程只包含文档和源码,在eclipse导入源码后需要在src上Build Path-->use as source folder才能正确执行)。等他修改完后,用新的工程替换旧的工程,push到我的github上,这样我也能获得最新的工程。只不过他的更新和同步上传全都通过Git Shell进行,并伴随文件的移动,而我的更新和同步上传只需通过客户端的GitHub进行。也许这不是最省事的开发模式,但对于入门和上手很实用。

最后一起去阿里巴巴的github玩一玩:

  git clone https://github.com/alibaba/ali-kernel

于是我们把阿里云OS的kernel下载下来了,能去给它添加文件test.txt(里面有料)并同步到阿里的github吗?


然而


这是没有权限的问题,这需要阿里接受我们成为它的collaborator或team members才行。最后介绍一下如何添加collaborator,毕竟上面的一切需要我们将队友纳入collaborator。

点击Github(网页版)上的Repositories,进入要共享的文件NITIAN-W


点击右侧的Settings


再点击Collaborator


在右侧的方框中输入队友的github账号,然后Add collaborator即可



3 0
原创粉丝点击