首页 > 代码库 > GitHub 初探
GitHub 初探
前言:有时候在公司上班时自己写了一些代码,打算下班回家后继续写,或者在家修改好的代码第二天要拷到公司继续完善,代码就经常要在这两者之间来回同步,通常情况下我用网盘或者U盘,但是实在是很麻烦,不断的备份和重命名,而且还非常容易覆盖出错,所以决定使用时下非常流行的 Git 和 GitHub 来管理自己的代码。
1.Git 与 GitHub
Git 是 C语言开发的分布式版本控制系统,GitHub 是一个基于Git的代码托管平台,同时也是全球最流行的开源项目(包括 Git , PHP , jQuery , Ruby , Mongodb , Zendframework/Zf2 , Facebook , WordPress , GitHub , Twitter , Cakephp ,Yii 等)的托管站点。Github 的付费用户可以建立私人仓库,免费用户只能使用公用仓库,即代码要公开。
Git 最初是为帮助管理 Linux 内核而开发的开源的版本控制软件,2012年5月 GitHub 发布了为 Windows 平台开发者提供的 Git 图形客户端:GitHub for Windows,它可以处理大部分常用版本控制任务,可以创建版本库,向本地版本库递交补丁,在本地和远程版本库之间同步。除了管理 GitHub 库,还可以管理其他的 Git 库。
GitHub for Windows ( G4W ) 是基于 MSysGit ( 即 Git for Windows,它是 Git 版本控制系统在 Windows 下的版本 )的,Windows 用户可以使用 MSysGit 配合图形界面软件 TortoiseSVN 的 Git 版本:TortoiseGit,也可以使用 G4W 或其他的客户端。
2.使用 GitHub 和 GitHub for Windows 创建、同步仓库和项目
①登录GitHub ( https://github.com/ ),注册完之后,创建仓库( New repository ),如图:
②填写仓库名称和描述,不需要勾选 Initialize this repository with a README。
③点击"Create repository",得到地址 https://github.com/dee0912/myRepository.git
也可以使用 G4W( v2.4.1.2 ) 来创建仓库:
①下载地址:https://windows.github.com/ ,只支持Vista,7和8 ),使用 G4W 可省去使用命令行将自己的SSH公钥添加到 GitHub 帐户里,以验证自己的身份,获得提交的权限,客户端会自动为你添加。
在上面的地址下载安装( Win7下 ) GitHubSetup.exe,安装过程中会自动安装.NET Framework:
.NET Framework安装完之后就开始安装 G4W:
在这期间可以干点别的;)
②装完之后,登录客户端:
而且桌面上多了两个图标:
登录之后会收到一封邮件,里面会有你的SSH key。
③此时可以使用客户端在本地创建仓库了:
④创建好之后显示:
⑤这个时候可以提交到远程仓库,选择Publish Repository:
⑥此时客户端 Publish Repository 变成了Sync,表示以后每次修改之后的提交就是同步到远程服务器:
⑦此时登录网页版GitHub,可以看到多了一个仓库:
⑧在仓库中添加项目,添加完之后客户端多了栏目Uncommitted changes:
⑨展开Uncommitted changes,添加完描述之后,选择Commit to master:
最后,点击Sync将本地仓库提交到GitHub,同步完之后登录网页版,就能看到自己的项目。
使用G4W创建、同步仓库和项目先写到这里。更详细的代码管理以后再记录。
3.在 GitHub 上参与开源项目
①在GitHub上为感兴趣的开源程序添砖加瓦,可以进到该项目的主页,选择Fork,此时在自己的GitHub账户下会出现一个相同项目的备份:
以后你对项目进行的修改、提交和贡献都在这个备份仓库中进行。
②选择Clone in Desktop或者Download ZIP,把项目下载至本地:
之后就可以修改、完善、增加内容,提交到你的GitHub仓库中
想要把你的修改合并到项目的主分支并最终生效,就需要申请一个pull操作并等待项目创建者进行合并操作。进入你帐户下项目的主页,点击pull requests->New pull request,点击合并链接请求合并,至此操作结束,接下来就是项目创建者要做的事情了,如果他check提交的文件内容后,认为可以可并那么就会响应你的pull请求,如果觉得不可以合并就不会响应pull请求。只有在pull请求被响应后,你提交的代码修改内容才会同步到主项目中去。
GitHub 初探