上一篇14文章触发了敏感话题,直接未过审核,看来技术博客也有敏感点。
大部分情况下,独立项目是你一个人开发,但是当你接的项目比较大的时候,你需要其他人的帮忙,这个时候你要把代码分享给别人。因为如果你使用一个人的FTP覆盖开发模式,会出现改动覆盖,当有三个人同时开发,更是噩梦般的存在。涉及到多人协作的时候,没有代码管理,会发现开发中一大半时间都是在扯皮互相覆盖干扰的代码。
所幸,有代码版本管理这种东西,在十年前,git还没流行的时候,SVN是一种替代方案,但是现在基本远程都使用git。如果你能正常上网,建议使用github.com (代码样板非常多,最大的问题在于,经常卡的受不了),国内的替代方案gitee.com 。拉取代码之前,都需要安装git的客户端https://git-scm.com/downloads (选择自己对应系统安装对应客户端即可)。对于国内的项目开发而言,gitee.com已经足够使用,这里做个简单说明。
注册好账号,新建仓库,这样就初始化了一个项目的地址。然后将项目地址,在本地某个文件目录下面,直接 git clone XXX 刚我们自己创建的仓库地址,这样就可以拉取到本地了,如果是私有项目,我们需要登录一次我买的git账号。
这样就完成了一个基础的git初始化项目搭建,然后我们将本地等待开发的代码放入到我们初始化的目录里面,进行俩次操作
git add . //将代码提交到缓冲区
git push //推送到远程仓库里面(也就是我们刚搭建的git仓库里面)
这样项目仓库完成第一步的初始化。我们每次开发代码之前,同样将别人git push的代码拉到本地,git pull 这个时候,可以看到很多更新的代码语句。
在最简单的情况下,这四个命令已经能完成最基础的协同开发功能。
git的工作简单流程:
git分三个区,工作区,缓存区,提交区,正常改动代码都在工作区,如果完成本次改动,就行git add XX 操作就会将本次改动提交到缓存区,如果最终要推送的时候,git push xx 就是将改动的那个文件提交到远程服务器 .
(2)git的常用命令小结
git 是一个工具,工具的使用是一个由新手到熟练的过程,在新手初期,我们需要掌握一些最常用的命令,可以认为90%的工作命令使用就是基本的10个命令。而要短暂的理解,只需要掌握这10个命令就完成了第一步的掌握。作为独立开发者,无需成为git专家。
Git branch 查看当前的分支 一般做操作之前,需要看到自己在哪个分支
git checkout -b <branch-name> 创建一个分支,并切换过去 当你要从别人的分支下面开始开发,在别人的分支下面新建这个命令,这样就切换到你的分支上,然后就可以开发了。同样当需要控制版本A,但是又有B版本任务开发的时候,也适合这种操作
Git merge XX 合并某个分支,合并的时候,如果产生冲突,需要解决对应冲突,解决之后重新git add . git push 提交。
Git log 查看提交日志,产生冲突的时候,需要查看哪一步出现冲突,方便核对。
Git status 当前的git状态,会告诉你提交了没提交。有时候代码第二次打开的时候,你不知道你上次的代码提交了没有,需要查看下,当前哪些是等待提交的。
Git stash 临时保存修改,最典型的场景,你修改着你的代码,这个时候,产品紧急提了个需求,你不能将你没修改好的功能提交上去,但是又不能不优先处理产品的紧急需求,这个时候,你面临这个抉择,就需要git stash 来暂时储存当前的工作进度。
Git branch --all 查看当前全部的分支,这个对于git项目的管理很重要,可以看到当前出现了多少分支, 多少人在提交。
(3)git的可视化工具
要对比改动不同,可视化工具比命令行好用很多,除了git自带的GUI工具(相对没有那么好用)
特点是方便,但是不是那么方便使用。
可以使用乌龟Tortise,查看历史