工欲善其事,必先利其器

共图社scott 大白共图社  

开发一个完整的商城系统,必然需要提升工作效率的工具,该篇文章介绍代码管理的工具git。

 

对于刚接触git的人,git会有点陌生。git是个版本控制软件。何为版本控制?在我们开发过程中,面对需求的变更以及功能的优化,直接牵扯到的便是代码的变动,每一次变动后的代码相对之前都是一个新的版本,每个版本会记录代码变动相关的信息,方便日后的维护与管理,在每个版本的记录信息中可以很方便的看到哪些功能在哪个版本中添加,哪些bug是在哪个版本中出现,能很大程度提高我们管理代码的效率。版本控制的软件很多,git只是其中之一,但是git是普遍使用的,故而商城系统选择git管理。

 

接下来通过介绍git在我们的商城系统中的使用,来介绍git整个的使用流程。由于学习git最好是在命令行模式下,故该篇文章基于centos系统展开。

 

 

安装git软件

 

 

yum install git

 

 

git思想和工作原理

 

到这里有必要了解一下git的工作原理,我们使用git实际上使用的是基于git工作原理上的规则,就像学习一门外语,只有了解外语背后的文化后才能对语言的使用达到信手拈来的地步,我们要了解git基本的运行规则,这才是使用git的第一步。

 

git思想:每个版本只记录当前版本修改过的文件,其他没有修改的文件,不再重新存储该文件,而是只保留一个链接指向之前存储的文件。

              

 

Version对应版本,File对应文件,虚线代表保存索引,实线代表保存文件。

 

第一个版本Version 1,新创建3个文件File A B C,因此全部按文件保存;第二个版本Version 2,File B没有修改,因此只保存一个链接,这个链接指向上个版本保存的File B,而File A 和C都有改动,因此都保存文件,之后的版本依次类推。

 

git工作原理:我们通过编辑器修改文件内容或者新建文件之后,最终通过git,会把这个改动按上面所说的思想,存到git仓库。这中间的详细过程如下:

       

 

在Working Directory修改文件,通过Stage Fixes过程把改动暂存到Staging Area,然后通过Commit过程变回把改动放到git仓库.git directory。如果想在git仓库里撤销这次的改动,则通过Checkout the project过程。

 

这里的Working Directory是对项目的某个版本提取出来的内容。按Version 1来看的话 就是File A B C,而按Version 2来看的话就是File A1 C1以及通过链找到的File B。因为Version 2中A1和C1都有改动。Staging Area是个暂存区。

 

 

提交操作

 

 

首先,针对商城系统,我们进行了第一次开发,接下来,我们要把这不过分开发放到git仓库里。这个时候由于还没有git仓库,自然先要在商城项目的根目录下创建仓库。

 

git init

该命令将会创建一个名为.git的子目录,这个目录包含git仓库的所有文件,我们之前说的每个版本保存的文件和索引也是存在这个目录下.同时暂存区Staging Area内容存放在.git/index文件中。有了git仓库,有了暂存区,接下来我们便开始把第一次开发提交到git仓库:

 

  • git add

文件名 把文件放到暂存区

 

  • git commit -m "提交信息"

这一步是真正的提交,会把暂存区的改动放到git仓库里 提交信息是自定义的,可以是“第一次提交”,这个看个人的想法,主要目的是方便日后查看这次提交。至此,第一次开发,便作为第一个版本,存在了git仓库中。这个时候我们便可以看看git仓库的提交历史

 

  • git log

在这里人为区分每次提交 就看我们之前提交的 “提交信息”

当然,偶尔也会有这种情况,我们执行完 git add命令之后,忘记有没有执 git commit了,这个时候,变可

以通过下面的命令查看到哪一步了。

 

  • git status

用于查看文件处于什么状态

 

 

撤销操作

 

上面只介绍了一次完整的提交流程,但是每次操作git命令之后,总有那么几次,发现我们提交的改动不对,这就需要撤销之类的操作:

 

  • git checkout --文件名

  • git add之后,修改进入到暂存区,如果想逆转这个操作,便可以用这个命令

  • git reset HEAD 文件名

  • 对于git add 之后但还没git commit的文件,如果要撤销修改变可以用这个命令,逆转git commit

                      talk is cheap  ,show you the code and the doc,更多的分享内容请关注我的工作号:大白共图社。公众号会有很多的github开源社区拿来即用项目源码以及相关的文章。欢迎关注。

                                                                       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

比特科技软件开发工作室

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值