工作中如何高效使用Git,这篇文章能解答吗?

摘要:本文将从 Git 入门到进阶、由浅入深,从常用命令、分支管理、提交规范、vim 基本操作、进阶命令、冲突预防、冲突处理等多方面展开,足以轻松应对工作中遇到的各种疑难杂症,如果觉得有所帮助,还望看官高抬贵手给个赞呗,感谢!
虽
本文将从 Git 入门到进阶、由浅入深,从常用命令、分支管理、提交规范、vim 基本操作、进阶命令、冲突预防、冲突处理等多方面展开,足以轻松应对工作中遇到的各种疑难杂症,如果觉得有所帮助,还望看官高抬贵手给个赞呗,感谢! 虽说现在工作中使用 Git 都会用一些图形化管理工具来提高开发效率。可事实上使用图形管理化工具的前提,也是基于对命令都基本了解。还有比如我平时用的工具 Github Desktop 因为不带第三方合并工具,只能手动解决冲突,而且有的功能没有,只能配合自己手动敲命令。 即使是工具也没有那么完美的工具,掌握命令才是渔,工具只是鱼。其他的 Git 可视化管理工具比如:小乌龟、SourceTree、还有我们开发用的 IDE 集成的,本篇不过多介绍。 基本概念 Git 是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。 Git 的作用与好处是: 可以帮我们保存文件的所有修改记录,并且使用版本号进行区分,让我们随时可以浏览历史版本、对比不同版本的差异、还原到指定版本,起到恢复和保护作用的同时,还能和其他人同时修改,然后通过 Git 来合并修改的部分文件,超级方便。主要有以下特点: 分支更快、更容易。 支持离线工作;本地提交可以稍后提交到服务器上。 Git 提交都是原子的,且是整个项目范围的,而不像 CVS 中一样是对每个文件的。 Git 中的每个工作树都包含一个具有完整项目历史的仓库。 没有哪一个 Git 仓库会天生比其他仓库更重要。 不熟的同学别和 Github 搞混了,Git 是工具,Github 是平台,没有什么必然的联系,就像 Java 和 JavaScript 也没有什么必然联系一样 Github 是一个主流的代码托管平台。可以理解为存放和管理代码的网盘,可以把自己的代码传上去进行共享和维护。 安装配置 安装地址:Git - Downloads (git-scm.com) 安装好后,命令行窗口是使用 Git Bash、CMD、Powershell、终端、或者编译器内置的都行,这个就看个人喜好。 接着可以再配置下默认用户名和邮箱,比如配置全局的就用如下两条命令,替换成自己的用户名和邮箱,以后所有的项目都会默认这里配置的用户信息 git config --global user.name 'xxxx' git config --global user.email 'xxxx@xx.com' 如果只需要在某个特定的项目中用其他的名字和邮箱,不用全局的,就把上面命令中的 --global 去掉在项目下执行即可,或者不执行命令,直接在项目下的 .git/config 文件里添加如下,也可以 # xxx 指的是填你自己的用户名和邮箱,不是真的写 xxxx 上去 [user] name = xxxx email = xxxx@xx.com 基本操作 先了解一下几个基本概念: 工作区:开发的地方,开发过程就是对工作区的操作 暂存区:执行 git add xxx 命令后,会把当前修改过的文件添加到暂存区 本地仓库:执行 git commit 命令完成后,会把当前暂存区的文件放入本地仓库 远程仓库:就是用来托管代码的服务器(如:Github、Gitee、GitLab、工蜂、Bitbucket..),执行 git push 命令后,会把本地仓库的文件提交到远程仓库 常见选项 再认识一下几个后面会用到多次的命令。 命令 缩写 意思 --all -a 全部 --force -f 强制 --delete -d 删除 --delete --force -D 强制删除 --move -m 移动或重命名 --move --force -M 强制移动或重命名 -u 设置默认远程分支 基本用法 上面的四条命令在工作目录、暂存目录(也叫做索引)和仓库之间复制文件。 git add *files* 把当前文件放入暂存区域。 git commit 给暂存区域生成快照并提交。 git reset -- *files* 用来撤销最后一次git add *files*,你也可以用git reset 撤销所有暂存区域文件。 git checkout -- *files* 把文件从暂存区域复制到工作目录,用来丢弃本地修改。 你可以用 git reset -p, git checkout -p, or git add -p进入交互模式。 也可以跳过暂存区域直接从仓库取出文件或者直接提交代码。 git commit -a 相当于运行 git add 把所有当前目录下的文件加入暂存区域再运行。
阅读全文