在git如此风靡的环境下,如果对git没点深入的研究,都不好意思说自己是搞前端的。下面让我们一起走进git
一.每日工作备份
想象一下,如果某天你的硬盘突然坏了,那么硬盘上辛苦的工作成果是不是能幸存下来?如果不能该是多么的令人懊恼。如何防范灾难而不让一篮子的鸡蛋一次毁于一旦,让我们一起走进git,让我们辛辛苦苦的工作成果有所保障。
如上图所示,每完成一部分的工作,我都会通过git add . 和git commit提交一次,每天下班前,我会通过git push命令,将我本地git版本库的工作推送到公司git服务器,相当于执行了步骤1。因为公司的git服务器和异地的git数据中心建立了镜像,所以每次在我执行推送师,会自动触发内网服务器到外网服务器的镜像操作,相当于执行了步骤2.
二.异步协同工作
可能有好几个人同时开发一个项目,或者是一个人在不同主机上对一个项目进行修改,这样就会形成异步协同工作。好比我在家和公司对一个项目进行修改,下图说明我是如何解决这个问题的
步骤3.4显示了我在家是如何工作的,首先我通过步骤3将镜像库的项目拉到本地(在家肯定必须有局域网),然后经过修改后,通过步骤4将工作提交到home的版本库。这里为什么要引用home的版本库呢?直接用mirror版本库不行吗?确实不行,因为mirror是一个镜像库,不能进行写操作。步骤3的命令也很简单,用git pull mirror master就可以了。步骤4的命令是git push home。
三.修改提交说明
可能很多人,在提交之后,会发现自己的提交说明有错别字,或者是不是很好理解。这时候就需要修改提交说明。在git中直接使用git commit --amend就可以进入修改提交说明的页面,在这里你可以修改任意一次提交的说明。
四.想吃后悔药
如果你提交了一个不应该提交很大的图片a.img,这时候git很简单的就能删除这个文件的提交,使用git rm --cached a.img,git commit --amend就可以实现
五.工作进度保存
如果有个紧急需求,需要切换到一个干净的工作区,或者是另外一个分支时,如何能确保当前未被提交的工作得以保存下来,git提供了很简单的方法。
git stash保存当前分支的工作,git checkout new-branch切换到新的分支。当紧急需求完成后使用下面命令切换回原来的命令并恢复工作区
git checkout origin-branch
git stash pop