新版本库即是新项目
在GitHub,一个项目对应唯一的Git版本库,创建一个新的版本库就是创建一个新的项目。访问仪表板(Dashboard)页面,如图3-1,可以看到关注的版本库中已经有一个,但自己的版本库为零。在显示为零的版本库列表面板中有一个按钮“New Repository”,点击该按钮开始创建新版本库。
版本库初始化
如果是从头创建版本库,可以采用先克隆,建立提交数据,最后再通过推送完成GitHub版本库的初始化。步骤如下:
-
克隆版本库。
克隆过程会显示警告,不过这个警告可以忽略,因为GitHub创建的版本库本来就是一个空白的版本库。(我们在创建版本库时可勾选初始化就不会有了):
-
$ git clone git@github.com:gotgithub/helloworld.git Cloning into 'helloworld'... warning: You appear to have cloned an empty repository.
-
创建文件README.md[1]。
下面是一段示例文字,把这段文字保存为文件README.md,该文件的内容将会直接显示在项目首页中(显示效果参见后面的图3-5)。
# 我的第一个GitHub项目 这是项目 [helloworld](https://github.com/gotgithub/helloworld) , 欢迎访问。 这个项目的版本库是 **Git格式** ,在 Windows、Linux、Mac OS X 平台都有客户端工具可以访问。虽然版本库只提供Git一种格式, 但是你还是可以用其他用其他工具访问,如 ``svn`` 和 ``hg`` 。 ## 版本库地址 支持三种访问协议: * HTTP协议: `https://github.com/gotgithub/helloworld.git` 。 * Git协议: `git://github.com/gotgithub/helloworld.git` 。 * SSH协议: `ssh://git@github.com/gotgithub/helloworld.git` 。 ## 克隆版本库 操作示例: 1.先克隆 $ git clone git://github.com/gotgithub/helloworld.git
上面这段文字采用Markdown格式,您也可以使用其他支持的格式,只要确保README文件使用正确的扩展名。本书附录部分介绍了Markdown及其他GitHub支持的标记语言。关于Markdown,目前我们只需知道这一个易于识别和理解的纯文本格式,可以方便的转换为HTML。Markdown语法非常像我们在写邮件(纯文本)时用空行来分隔段落、用星号开启列表、用缩进表示引用内容等等。
-
添加README.md文件并提交。
$ git add README.md $ git commit -m "README for this project."
-
向GitHub推送,完成版本库初始化。
$ git push origin master
然后查看GitHub上新建项目的首页。项目首页的上半部分可见版本库包含了一个新的提交,以及版本库目录树中包含的文件,如图3-4所示。
在项目首页的下半部分,会看到README.md文件被转换为HTML显示,如图3-5所示
为何每次 git commit 之前都需要 add 一次才能 commit?http://www.zhihu.com/question/19946553
从已有版本库创建
如果在GitHub项目初始化之前,数据已经存在于本地版本库中,显然像上面那样先克隆、再提交、后推送的方法就不适宜了。应该采用下面的方法。
为试验新的版本库初始化方法,先把刚刚新建的测试项目“helloworld”删除,同时也将本地工作区中克隆的“helloworld”删除。警告:删除项目的操作非常危险,不可恢复,慎用。
-
点击项目首页中项目名称旁边的“Admin”按钮进入项目管理页,再点击页面最下方的删除版本按钮,如图3-6所示。
-
然后再重建版本库“helloworld”,如本章一开始图3-2所示。
接下来使用下面的步骤完成“helloworld”版本库的初始化。
-
本地建立一个Git版本库。
$ mkdir helloworld $ cd helloworld $ git init
-
然后在版本库中添加示例文件,如README.md文件,内容同前。
$ git add README.md $ git commit -m "README for this project."
-
为版本库添加名为origin的远程版本库。
$ git remote add origin git@github.com:gotgithub/helloworld.git
-
执行推送命令,完成GitHub版本库的初始化。注意命令行中的-u参数,在推送成功后自动建立本地分支与远程版本库分支的追踪。
$ git push -u origin master
[1] | 以扩展名.md,.mkd,.mkdn,.mdown,.markdown等为结尾的文件,均以Markdown标记语言语法进行解析并显示。 |
git官方教程:
很红的书籍:
http://marklodato.github.io/visual-git-guide/index-zh-cn.html 图解git
gotgithub http://www.worldhello.net/gotgithub/index.html
http://gitready.com/ git初学者网站,很好。