通常,我们在进行大型工程化,多人协作的软件开发时,离不开一个必要的过程即版本控制,通过将我们的代码存入远程仓库中即可实现代码的储存,目前主流的仓库有github,对于国内用户来说,gitee也是一个比较好的选择。
而实现版本控制,则需要借助版本控制软件目前主流的为git,git是检测代码修改变更的利器。git对于新手来说可能会感觉难以上手,会被黑压压的命令行吓到,实则不然,对于日常使用来说,git还是非常简单的。
今天我就分享一下git的最基本命令,从而帮助大家快速上手。
git设计逻辑

git的设计逻辑如上图所示,平时在本地通过编辑器敲的代码,如果一次都没进行上传,那么它就在工作区,通过git add 提交一次,他会在本地的暂存区,此时就可以对比代码有哪些改动,通过git commit提交一次它会将暂存区里的文件存入本地的仓库,此时如果连接远程仓库,就可进一步将本地仓库里的代码提交到github,gitee等远程仓库。
熟悉了git的基本设计原理之后,就可以上手git的基本命令了
下载git客户端
首先下载git客户端,这个官网就可以下,过程较简单,不做过多赘述。
下载之后打开 git bush打开之后如图所示

对于一个从未接受过git的文件我们需要先对其进行初始化,首先需要进入文件对应的目录
有两种进入方式,第一种右键目标文件夹,选择Git Bash Here

进入之后会发现路径的一个变化

第二种方法是复制文件的目录,通过命令 cd xxxx
xxxx为目标路径如例如: D://Vue_review
两种方法本质上是一样的。
文件初始化
进入之后我们通过输入“git init”这个命令,即可生成一个.git文件,表示此文件已经接受git管理。


这时候就可以在工作区完成自己的代码了

工作区提交到暂存区
如果想要将工作区的代码提交到暂存区,可以通过“git add -A”命令,表示将工作区的所有文件提交到暂存区,如果只想提交到单个文件可以通过“git add xxxx”命令
xxxx为文件目录
暂存区提交到本地仓库
如果想提交暂存区里的所有文件到本地仓库可以通过“ git commit -m "xxxx" ”
xxxx为文件的描述信息,如“本次修改增加了登录功能,修改了提交的bug”

出现此提示即可证明提交完成
查看日志
git log --stat
查看提交记录

版本回溯
版本回溯也是一个非常重要且有用的功能,如果想要回溯到以前的版本需要用到以下命令。
工作区回滚
git checkout xxxx
xxxx为文件名
它会将工作区的文件回滚 一次
将提交到仓库里的版本进行回滚
git reset HEAD^xxxxx
xxxx为回滚几次
默认是1
分支
同时版本控制离不开一个重要的概念——分支
分支即在哪个起点开始进行代码的修改。通常一个程序员每次改进需要新建一个分支,而master分支通常是项目的一个发行版本。
master分支通常是一个分支的起点和终点 ,创建一个仓库,默认的第一个分支就是master
关于分支的常见命令:
查看分支
git branch
查看当前分支都有哪些
切换分支
git checkout xxxx
切换到xxxx分支
分支合并
git merge xxxx
xxxx为要合并到当前分支的目标分支
想哪个分支合先切换到那个分支
删除分支
git branch -d xxxx
xxxx为要删的分支名
git merge xxxx
xxxx为要合并到当前分支的目标分支
想哪个分支合先切换到那个分支
设置远程仓库
git remote add origin xxxxx
xxxx为gitee或者github地址,

如在gitee中,本仓库的地址即为右下角的一串网址,github上也在同样位置。
提交到远程仓库
git push
把本地仓库的版本提交到远程仓库
将远程变更拉取到本地
git pull
将两个分支进行合并,不一样的地方git会提示,从而达到处理版本冲突的目的。
git merge xxxx
xxxx为要合并到当前分支的目标分支
想哪个分支合先切换到那个分支
git merge --abort
放弃这次合并
业务开发流程
总的来说一个业务的开发流程为
1.先从远程拉取一个初始的代码仓库(因为实际开发很少有真正从0到1的项目)
2.创建分支
3.在本地进行修改
4.如果在修改期间原分支发生了变动,需要及时进行分支合并
4.提交到本地仓库
5.提交到远程仓库(涉及到处理冲突的问题,那就需要自行判断)
除了第一点其他都讲到了,第一点打开git客户端通过命令”git clone xxxx“即可实现
xxxx为仓库地址
结束语
接下来我可能会写一篇github非开发人员纯小白的使用教程,主要从使用者而非贡献者的角度讲解一下github的使用教程,如果单纯使用github的话会比较简单。