分布式版本控制系统的安全性要高很多,因为每个开发人员电脑里都有完整的版本库,某一个开发人员的电脑坏掉了不要紧,随便从其他开发人员那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有开发人员都没法工作。
Gt 是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。
G 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 Torvalds 开始着手开发 Gt 是为了作为一种过渡方来替代 Bitkeeper,后者之前一直是 Lnux 内核开发人员在全球使用的主要源代码工具。
尽管最初 Git 的开发是为了辅助 Linux 内核开发的过程,但是已经发现在很多其他自由软件项目中也使用了 Git。
安装可以到官网下载对应系统的安装包进行安装。然后正常的安装流程即可。
通过右键即可看到 Git Bash Here,即可打开 git bash 工具。
通过输入 git --version 也可以看到版本号。
Bashgit config --global user.name "Your Name"git config --global user.email "email@example.com"安装完成后需要设置用户信息,因为 Git 是分布式版本控制系统,所以每一台电脑注册用户信息(名称和 Emai 地址)。
值得注意的是, git config 命令的 global 参数,表示当前这台电脑上所有的 Git 仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和 Emai 地址。
工作区
当前电脑里能看到的目录
暂存区
英文交 stage 或 index。一般存放在.git 目录下的 index 文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)
版本库
工作区有一个隐藏目录.git,这个不算工作区,而是 Git 的版本库。
clone
Bashgit clone Repo添加到版本库
Bashgit add fileName需要进入到版本库目录才可以使用此命令。
将添加的文件提交到版本库
Bashgit commit -m 'message' [file Name]git commit 命令后可以添加文件名称,表示只提交这个文件,但一般不会跟文件名称,表示全部提交。
将本地版本库 Push 到远程库中
Bashgit push URL master从远程库更新到本地库
Bashgit pull查看上次修改的信息
Bashgit status查看执行 git status 命令结果的详情信息
Bashgit diffgit diff 命令显示已写入缓存与已修改但尚未写入缓存的改动的区别。
查看尚未缓存的改动
git dff
查看已缓存的改动
git diff --cached
查看已缓存的与未缓存的所有改动
git diff HEAD
显示摘要而非整个 dif
git diff --stat
每一种版本控制系统都以某种形式支持分支。使用分支意味着可以从开发主线上分离开来,然后在不影响主线的同时继续工作。
有人把 Git 的分支模型称为 “必杀技特性”, 而正是因为它,将 Git 从版本控制系统家族里区分出来。
创建分支
Bashgit branch name如果只输入 git branch 那么将显示当前的分支,有标识的表示当前正在使用的分支。
切换分支
Bashgit checkout name合并分支
Bash# 切换到主分支git checkout master# 将某个分支合并到master分支git merge name如果两个分支同一文件同一行都发生了修改,那么将不会自动合并分支,而是需要处理冲突。
删除分支
Bashgit branch -d dev推送分支时,删除多余分支
Bashgit push origin --delete branchName可以通过 VSCODE 中的插件进行快速的合并。合并完成后通过 git add 命令告诉 git 冲突已经解决。
合并分支遇到冲突
[外链图片转存中…(img-qfVf2AD0-1599094018737)]
可以通过 VSCODE 中的插件进行快速的合并。合并完成后通过 git add 命令告诉 git 冲突已经解决。