1 Git是何方神圣?
Git是用C语言开发的分布版本控制系统。版本控制系统可以保留一个文件集合的历史记录,并能回滚文件集合到另一个状态(历史记录状态)。另一个状态可以是不同的文件,也可以是不同的文件内容。举个例子,你可以将文件集合转换到两天之前的状态,或者你可以在生产代码和实验性质的代码之间进行切换。文件集合往往被称作是“源代码”。在一个分布版本控制系统中,每个人都有一份完整的源代码(包括源代码所有的历史记录信息),而且可以对这个本地的数据进行操作。分布版本控制系统不需要一个集中式的代码仓库。
当你对本地的源代码进行了修改,你可以标注他们跟下一个版本相关(将他们加到index中),然后提交到仓库中来(commit)。Git保存了所有的版本信息,所以你可以转换你的源代码到任何的历史版本。你可以对本地的仓库进行代码的提交,然后与其他的仓库进行同步。你可以使用Git来进行仓库的克隆(clone)操作,完整的复制一个已有的仓库。仓库的所有者可以通过push操作(推送变更到别处的仓库)或者Pull操作(从别处的仓库拉取变更)来同步变更。
Git支持分支功能(branch)。如果你想开发一个新的产品功能,你可以建立一个分支,对这个分支的进行修改,而不至于会影响到主支上的代码。
Git提供了命令行工具;这个教程会使用命令行。你也可以找到图形工具,譬如与Eclipse配套的EGit工具,但是这些都不会在这个教程中进行描述。
2 重要的术语
Git 术语
术语 | 定义 |
---|---|
仓库 | 一个仓库包括了所有的版本信息、所有的分支和标记信息. |
Repository | 在Git中仓库的每份拷贝都是完整的。仓库让你可以从中 |
取得你的工作副本。 | |
一个分支意味着一个独立的、拥有自己历史信息的代码线 | |
分支 | (code line)。你可以从已有的代码中生成一个新的分支 |
Branches | ,这个分支与剩余的分支完全独立。默认的分支往往是叫 |
master。用户可以选择一个分支,选择一个分支叫做 | |
checkout. | |
标记 | 一个标记指的是某个分支某个特定时间点的状态。通过标 |
Tags | 记,可以很方便的切换到标记时的状态,例如2009年1月25 |
号在testing分支上的代码状态 | |
提交 | 提交代码后,仓库会创建一个新的版本。这个版本可以在 |
Commit | 后续被重新获得。每次提交都包括作者和提交者,作者和 |
提交者可以是不同的人 | |
URL | URl用来标识一个仓库的位置 |
用来表示代码的一个版本状态。Git通过用SHA1 hash算法 | |
修订 | 表示的id来标识不同的版本。每一个 SHA1 id都是160位长 |
Revision | ,16进制标识的字符串.最新的版本可以通过HEAD来获取. |
之前的版本可以通过"HEAD~1"来获取,以此类推。 |
3,Git和GitHub的关系?
---GitHub是个网站,Git是个软件。github是实现git版本管理的一个网站。git和svn一样算是版本管理协议。
---个人理解
Git就是一种源码管理的协议(相当于SVN).
GitHub是实现Git这个协议的软件服务/网站服务(相当于TortoiseSVN).
---同时, GitHub除了实现"Git协议"外, 还扩展了自己的功能(例如在线管理, GitHub Page, 社交分享等).
@github在windows下使用总结(个人总结):
一,github客户端下载安装和操作教程:
1,在https://github.com/主页上,注册一个用户,例如用户名tianshisan
2,然后登录进去,点击set up Git,选择windows,然后下载GitHub客户端。
3,下载后会连接远程服务器进行远程安装。
4,安装完成以后,桌面上会添加两个图标,一个是GitHub图标(客户端工具),一个是Git Shell图标(命名行工具)。
5,然后,打开客户端工具,我们就可以创建仓库(Repository)了。选择一个本地的文件夹目录,然后新建一个仓库,做为代码存储仓库。注意,可以随意新建多个仓库。
---注意,创建仓库后,只有,添加注释后,才能向远程服务器publish这个仓库,否则会报publish失败。publish之后,客户端按钮就会变成sync(同步),表示以后的修改,提交就是同步。
---这个时候,到github网页上,就能看到多了一个仓库。
6,在仓库中新建项目,只需要新建一个文件夹,然后新建项目文件后(注意,只建一个空文件夹不行,必须有文件,才能注释同步。)。新建文件后,在客户端中,就会显示changes有变化的提示。
---点击上边的show按钮,就能看到下图显示。即给项目添加注释,注意不添加注释,不会能同步。
---添加注释后,上图的sync后边就会添加一个同步提示。点击以后(会出现一个同步进度条),就会同步到网站服务器上,如果不点击就不会同步到网站服务器上。
同步完成以后,在网页上刷新一下,就会看到,文件已经同步到服务器上了。
二,服务器端即网页端,也可以添加仓库,以及上传文件。(待研究总结。)
@总结:
1,主要是利用github的版本控制功能。
2,github可以在线添加代码文件。
3,线上(服务器端)和线下(电脑端)同步。
4,settings中可以设置,删除仓库。