Skip to content

Latest commit

 

History

History
102 lines (48 loc) · 4.06 KB

File metadata and controls

102 lines (48 loc) · 4.06 KB

版本控制

版本控制的功能类似于网盘的存储功能,但是相比于网盘来说,增加了记录历史的功能。版本控制工具会记录每次更新的内容,然后也可以会到指定的某个版本。还能很好的解决版本冲突的问题

现在主流的版本控制工具有svn和git,然后很多的服务器运行商也会提供手动的版本控制功能,以sae(新浪云)为例.手动创建示例。

历史:

cvs->svn->git->github

cvs和svn都是集中式的版本控制工具,svn出现的时间为2000年

git为2005,github(托管网站)为2008,它们是分布式的,可以保存在本地

资源:

github介绍

git的使用

在已安装git的情况下可以通过git --help显示这些命令

创建仓库

可以使用sae(新浪云),使用sae创建的仓库是项目组成员才可以访问代码,也可以使用github去创建一个仓库,默认是开源,github鼓励开源代码.私人的是要收费的(7美元),所以建议如果私人的用sae或者其他的仓库就行

新浪云在创建的时候选择git就可以了.

Markdown

github:

然后接下来的操作都是基本一样的,接下来我主要还是以github为例做演示.

首先使用git clone命令克隆仓库

git clone https://github.com/tangcaiye/tangcaiye001.git

Markdown

提交

首先在克隆下来的文件目录下随便创建一个文件,比如一个index.html,内容随意,然后在终端中先使用git status来查看一下工作区的状态.

会提示有一个未跟踪的文件:index.html,让你使用git add来提交文件

我们根据提示键入git add index.html来提交文件,提交后再查看一下状态,它会提示一个可以通过git reset HEAD <file>来撤出暂存区.

当然我们现在是要提交变更的.可以使用git commit来提交这次变更.然后再填写更新说明.然后键入:wq修改后保存并退出

但现在刷新github的仓库还是没有更新index.html,这是因为我们现在只是提交到了我们本地的仓库中了.如果要让github的仓库也更新还需要键入git push来提交到远程仓库.

到这里,文件就被提交到github上了

Markdown

版本冲突

当这个项目是由多个人开发的,然后都对项目进行了更新提交,这个时候就会出现版本冲突,然后你可以通过git pull来合并远程变更

Markdown

使用了git pull后git就会自动的合并两个冲突的内容,然后你再手动的修改来决定要保留哪一个,然后再次上传,就可以了.而如果远程库已经更新了的话我们也需要调用git pull来更新一下

回到过去

可以通过git log来查看git的提交记录,然后通过commit的id来决定要返回到哪里

Markdown

然后通过git reset --hard fcdd4ed66ee325efc7ffddac54bb3e1b6c6607e7 ,然后里面的hard就是当前版本的指针.对指针的修改就是将环境的代码退回到指定时间点的代码状况

回到未来

git reflog可以列出在回到过去前的所有版本更新记录,然后也可以通过git reset --hard e21145c来回到未来.

Markdown

创建稳定版本

在sae中点击创建版本按钮所创建的版本就是稳定版本,也叫里程碑版本.

在github中是使用releases来创建稳定版本的

Markdown

点击进入后点击create a new releases就是设置稳定版本的界面,

Markdown