基于可视化界面的操作可使用Sourcetree这个软件进行操作。
下面将描绘的几个命令主要是
- git init
- git add
- git commit
- git status
- git reset HEAD
- git checkout
- git log
- git rm
第一天,产品经理提出了一个需求,李明便开始创建仓库(本地仓库为例)。在Repertory文件夹下创建了一个Demo文件夹,在Git Bash控制台中进入Demo文件夹,输入git init回车进行初始化操作,于是文件夹中初始化除了.git的隐藏文件夹。
完成第一天的需求之后李明将代码文件(txt文件为示例)先通过 git add 文件名 命令添加到暂存区,然后再通过 git commit -m "该次提交说明" 命令将代码文件提交到仓库分支,最后潇洒地通过git status查看工作目录和暂存区的状态,看到控制台显示的nothing to commit,working tree clean 十分舒适,再看了一眼时间,还有3分钟下班。
这时候产品经理来了:“李明啊,这儿得加个需求。”李明:“。”
于是李明把添加的需求搞定之后已经过了下班时间,需求还没进行测试,第二天再来测试,于是李明使用git add把修改后的代码文件上传到暂存区暂存。
day2:
李明刚坐到凳子上,产品经理便来说:“李明啊,昨天那个新加的那个需求删了吧没啥用。”李明:“-_-”
于是李明使用 git reset HEAD bash_demo.txt 将暂存区中的文件丢弃回到上次修改的版本。再git checkout -- bash_demo.txt 将工作目录的文件clean
然后李明继续了day2的需求开发并将开发后的代码文件上传提交。
然后关键时刻产品经理又来了:“李明啊,今天的需求不用做,删了吧。”李明:“->__->”
毕竟产品经理还是你产品经理,李明于是用git log查看之前提交的日志,获取第一次需求提交之后的commit号,使用git reset --hard commit号 进行回滚到之前的版本。
是的,产品经理来的很及时:“李明啊,这两天的所有需求都不用做了,都删了吧。”李明:“****”
于是李明开始使用 git rm bash_demo.txt 将本地仓库文件清空了。
但是仓库和暂存区还没有清空。
小明于是继续将这步进行提交最后git status查看clean了
最后附上一个总览