git是当下最流行的版本控制工具,掌握它能有效提高团队协作的效率,我想每一个软件开发团队的成员都希望自己以及自己的队友能够熟练地使用git。
同时自己每次写的项目和肖demo都可以以提交到github上备份,不然写的越多到后面越来越乱呢
(一)安装与配置,网上教程多的一,不谈
在写代码前首先我们要对git的分区有一个了解:
git 中共有四大分区:
- 工作区(Working Area)
- 暂存区(Stage)
- 本地仓库(Local Repository)
- 远程仓库(Remote Repository)
工作目录是你实际的文件,stage是你的缓存区,保存你的改动,而head是你最后commit提交的结果
(二)创建版本库并添加文件的常用命令:
1.git init 创建本地仓库(×) 初始化一个空的本地仓库
先配置subl,然后使用 subl 命令带上文件名即可使用subline Text3打开文件。若没有此文件则创建一个新的文件,若有此文件则打开文件
2.git add 文件名 将快照的内容写入缓存区(add为第一步)
3.git commit -m'文件名' 将缓存区的内容加入仓库(commt为第二步,这一步的操作是将快照永久性存到仓库中)
这样文件就添加到本地仓库中了
4.git status 查看仓库中文件的状态
此处显示changed not staged for commit,是因为我修改了myson.txt中的内容,而没有add到stage中
现在再次add一次,则
这就对啦
5.git diff +文件名 查看文件修改了什么内容(没有add则会显示内容,若已经add则不显示内容)
我添加了一行我滴龟龟后显示如此内容。
(三)版本回退的常用命令:
我现在在myson.txt中再增加一行:it is just ok
1.使用git log查看显示日志
从上到下为最近三次提交的内容。
2.cat命令:连接文件并打印出来 cat+文件名
3.使用版本回退功能,将版本回退到前n个版本 git reset --hard HEAD^ 或者 git reset --hard HEAD~100(控制回到前几个版本)
噫吁嚱,这咋一下子退到hello world了,不是应该退后一个版本吗?
再实验了一次。懂了,回退版本是回退的commit的版本而不是add的版本哦
4.git reflog查找版本号
这个命令可以显示出每次操作对应的版本号,如果想要回退版本用这个查找版本号是十分方便的
5.通过版本号来回退到想要的版本 git reset --hard 版本号
(四)git撤销修改和删除文件
如果我现在在做一个项目,提交后发现做了一下午都是错的,那我想要回滚到以前的项目,我能怎么做?
首先 当然是最直观的,把那些都删了,重新add后commit一次
其次还可以通过git reflog查找版本号,然后通过git reset --hard 版本号来回滚版本
最后就是我现在要讲的啦:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------