Git是目前世界上最先进的分布式版本控制系统(没有之一) Git有什么特点?简单来说就是:高端大气上档次!
版本 文件名 用户 说明 日期 1 service.doc 张三 删除了软件服务条款5 7/12 10:38 2 service.doc 张三 增加了License人数限制 7/12 18:09 3 service.doc 李四 财务部门调整了合同金额 7/13 9:51
1、安装 git config –global user.name “lkp” git config –global user.email “1120262296@qq.com”
2、创建空目录 mkdir learngit cd learngit pwd //当前位置
3、把这个目录变成Git可以管理的仓库 git diff
4、把文件添加到版本库 将文件放到管理仓库中 git add readme.txt //将我呢见提交到暂存区 git commit -m “wrote a reanme file” //将文件从暂存区提交和进行注释
5、仓库当前的状态 git status //显示工作目录和暂存区的状态
6、显示上次对文件的修改 git diff
7.查看历史记录 git log git log –pretty=oneline //输出较少内容 一大串1094adb….是commit id(版本号),十六进制
8.把readme.txt回退到上一个版本,首先知道当前的版本,有HEAD表示,上一个版本 是HEAD^,上上一个版本是HEAD^^,往前100个版本是HEAD~100. git reset –hard HEAD^//回退到上一个版本 现在从21世纪回到了20世纪,我还想回去怎么办? (1)只要当前窗口没关,用 git reset –hard 1094a(版本号) //回到21世纪 Git的回退速度非常快,因为Git内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git仅仅是把HEAD指针改变。 (2)电脑已经关机 git reflog //记录你的每一次命令 找到上一次的版本号即可。
9.工作区和暂存区 learngit文件夹就是一个工作区 .git是Git的版本库,版本库中有称为stage(index)的暂存区。Git还自动创建了第一个分支master,以及指向master的一个指针HEAD 添加文件的两步: 第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区; 第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。主要是注释
10.为什么Git比其他版本控制系统设计得优秀, 因为Git跟踪并管理的是修改,而非文件
11.撤销修改 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout – file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD ,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库 git reset –hard head。
12.删除文件 rm test.txt//从工作去删除 (1)确实要删除 git rm test.txt //从版本库删除 git commit -m “delete test.txt” (2)若不想继续删除(从工作区删除后) git checkout – test.txt//用版本库里的版本替换工作区的版本(删除和修改都是) (3)若从版本库删除后,想要恢复,参考第11条