您的位置:首页 > 其它

GIT版本控制入门(一)

2015-08-25 20:01 309 查看
*之前要在某某网学习git版本控制,看的视频,看了一节就要收费了。

为什么学习版本控制?

简单来说就是:每个人负责项目的一部分,最终所有部分被整合到一起形成最终产品。或是当代码出现问题时,把版本恢复到正常版本。
参考自:justinjing的专栏

本次学习通过(http://www.liaoxuefeng.com/

CVS、SVN、git。免费开源版本控制。

1、Windows开发工具准备

虽然说Windows是最烂的平台,但电脑目前还是Windows的。
https://git-for-windows.github.io

安装模拟环境和Git——msysgit
安装完成后,在开始菜单里找到“Git”->“Git Bash,验证是否安装成功

安装完成后设置:

2、创建版本库

$ mkdir learngit //创建目录
$cd learngit //进入目录
$ pwd

/d/learngit //显示当前目录

*初始化,把目录变成git可管理的仓库
@ $ git init

Initialized empty Git repository in D:/learngit/.git/

.git 目录是git用来跟踪管理版本库的

*把文件添加到版本库
所有的版本控制系统,其实只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码等等,Git也不例外。年版本控制可告诉你每次的改动,例如知道文件第5行,增加了一个var
b=['2,''b']。但图片、视频等二进制文件的修改不能知道具体改了什么,没法跟踪文件的变化。只能把二进制文件每次改动串起来,也就是只知道图片从100KB改成了120KB。

——编写一个TXT文件readme.txt
git is a verson system
git is a free software

@$ git add readme.txt//文件添加到git,可一次add
两个文件

@ $ git commit -m "add a
new file" //可一次提交两个文件

我没有填 message!!

3、git status

修改readme.txt文件——>$ git status
lenovo@lenovo-PC MINGW64 /d/learngit (master)

$ git status

On branch master

Changes not staged for commit:

(use "git add <file>..." to update what will be committed)

use "git checkout -- <file>..." to discard changes in working directory)

modified: readme.txt

no changes added to commit (use "git add" and/or "git commit -a")

上诉内容说:文件已改动。没有准备提交的改动。

查看修改内容——$ git diff
提交修改——$ git add
再次查看文件是否被修改——$ git status
Changes to be committed:

提交——$ git commit -m "add distributed control"

工作目录是干净的。

4、版本回退

历史提交记录——$ git log
可以试试加—— --pretty=online 参数:然而我的并不管用

版本回退——$ git reset --hard HEAD^ (回退到上两版HEAD^^,100版HAED~100)
读取内容——$ cat readme.txt
查看版本号——$ git reflog
版本回退——$ git reset --hard ae89953

5、工作区和暂存区

Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。
先引入几个名词:工作区(Working
Directory)
版本库(Repository)————
.git

版本库里包含了:暂存区(stage)、.git自动创建的master、还有指向master的指针HEAD

第一步是用 git add 把文件添加进去,实际上就是把文件修改添加到暂存区;

第二步是用 git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: