身为一个合格的程序Yuan,Git工具我们必然是要掌握的,那么对于小白来讲一定有这几个疑问,Git是什么?怎么使用?怎么配置?Git命令是什么?本文将从这几方面帮助大家了解和使用Git。
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理,帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
Git开发过程如下图所示:
进入官网下载:Git - 下载
选择对应的系统版本
下载完成,点击.exe文件打开运行,然后点击Next
按需选择安装组件与配置,我这里使用的是默认选项。然后点击Next。
注意:选择默认编辑器的时候,只能选择电脑里已经安装了的编辑器,没有安装的,需要先安装。
Git安装程序中有10种编辑器和1个其他项可以选择,比如:the Nano
、Vim
、Notepad++
、Visual Studio Code
、Visual Studio Code Insiders
、Sublime Text
、Atom
、VSCodium
、Notepad
、Wordpad
。其中,默认是Vim。
本人日常使用VScode作为编译器,所以我选择“Use Visual Studio Code as Git’s default editor”。
关于VSCode请看此文章:VSCode安装配置使用教程(最新版超详细保姆级含插件)一文就够了
完成后,点击“Next”,进入下一步。
一般选择默认即可,然后Next。
仅从 Git Bash 使用 Git:你只能通过 Git 安装后的 Git Bash 来使用 Git ,其他的什么命令提示符等第三方软件都不行。
从命令行以及第三方软件进行 Git:在第一种基础上进行第三方支持,你将能够从 Git Bash,命令提示符(cmd) 和 Windows PowerShell 以及可以从 Windows 系统环境变量中寻找 Git 的任何第三方软件中使用 Git。推荐使用这个。
使用命令提示符中的 Git 和可选的 Unix 工具:选择这种将覆盖 Windows 工具,如 “ find 和 sort ”。只有在了解其含义后才使用此选项,即新手慎选。
使用捆绑的OpenSSH:这使用的是ssh.exe是Git自带的。
使用外部OpenSSH:这使用外部ssh.exe文件。Git不会捆绑安装OpenSSH相关的二进制文件,而是使用在环境变量path中找到它们。
默认选择第一项,直接点击“Next”进入下一步。
使用OpenSSH库:服务器证书将使用 ca-bundle.crt 文件进行验证。
使用本机Windows安全通道库:服务器证书将使用Windows证书存储进行验证,还允许您使用公司内部分发的内部根CA证书。
如果作为只是用Git来访问GitHub、GitLab等网站,选择第一项即可。然后点击“Next”,进入下一步。
签出 Windows 样式,提交 Unix 样式的行结尾:签出文本文件时,Git会将LF转换为CRLF。提交文本文件时,CRLF将转换为LF。对于跨平台项目,这是Windows上的推荐设置(“ core.autocrlf”设置为“ true”)。
按原样签出,提交Unix样式的行结尾:签出文本文件时,Git不会执行任何转换。 提交文本文件时,CRLF将转换为LF。对于跨平台项目,这是Linux/Mac OS上的建议设置(“ core.autocrlf”设置为“ input”)。
按原样签出,按原样提交:当签出或提交文本文件时,Git不会执行任何转换。不建议跨平台项目选择此选项(“ core.autocrlf”设置为“ false”)。
由于我是为Windows系统安装Git,所以选择第一项。然后继续点击“Next”,进入下一步。
建议选择第一种,MinTTY 3功能比 cmd 多,cmd 只不过 比 MinTTY 更适合处理 Windows 的一些接口问题,这个对 Git 用处不大。
除此之外 Windows 的默认控制台窗口cmd有很多劣势,比如 cmd 具有非常有限的默认历史记录回滚堆栈和糟糕的字体编码等等。
接着点击“Next”,进入下一步。
“git pull”行为:是获取最新的远程仓库分支到本地,并与本地分支合并。
默认选择第一项即可,点击Next进入下一步。
第一个选项是提供登录凭证帮助的,Git有时需要用户的凭据,确认身份后才能执行操作,例如:需要输入用户名和密码才能通过HTTP访问远程存储库(GitHub、GitLab…)。
然后继续点击“Next”,进入下一步。
启用文件系统缓存:就是将批量读取文件系统数据并将其缓存在内存中以进行某些操作,可以显著提升性能。这个选项默认开启。
“启用符号链接”,符号链接是一类特殊的文件, 其包含有一条以绝对路径或者相对路径的形式指向其它文件或者目录的引用,类似于 Windows 的快捷方式,不完全等同 类Unix(如 Linux) 下的 符号链接。因为该功能的支持需要一些条件,所以默认不开启
点击Next,进入下一步
众所周知,实验性功能都不是很稳定,以下两个选项都还是实验性功能,会存在一些小bug,建议都不要勾选。
点击Install,开始安装,大约一到二分钟时间即可完成安装。然后如下图所示:
点击Finish,关闭安装向导。
安装完成,右键会出现Git GUI和Git Bash。
Win+r,输入cmd,运行cmd.exe,或者使用右键菜单中是Git Bash Here。输入如下命令:
git --version
签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。Git 首次安装必须设置一下用户签名,否则无法提交代码,这里设置用户签名和将来登录 GitHub(或其他代码托管中心)的账号没有任何关系
因为通过Git对项目进行版本管理的时候,Git需要使用这些基本信息,来记录是谁对项目进行了操作
用户名使用英文的,邮箱写自己的邮箱即可
在右键菜单Git Bash Here中,输入如下命令:
git config --global user.name "用户名"
git config --global user.email "邮箱"
注意:如果使用了 --global 选项,那么该命令只需要运行一次,即可永久生效
通过 git config --global user.name
和 git config --global user.email
配置的用户名和邮箱 地址,会被写入到 C:/Users/用户名文件夹/.gitconfig
文件中。这个文件是 Git 的全局配置文件,配置一次即可 永久生效。
可以使用记事本或者VScode打开此文件,从而查看自己曾经对 Git 做了哪些全局性的配置
除了使用记事本查看全局的配置信息之外,还可以运行如下的终端命令,快速的查看 Git 的全局配置信息:
# 查看所有的全局配置项
# 列出全局的配置项
git config --list --global
# 查看指定的全局配置项
# 只查看用户名
git config user.name
# 只查看用户邮箱
git config user.email
检查发现用户名和邮箱不正确则重复上述的操作,直至检查正确为止。
可以使用 git help < verb >
命令,无需联网即可在浏览器中打开帮助手册,例如:
< verb >
是想要获取帮助信息的命令的名称
# 打开 git config 命令的帮助手册
git help config
如果不想查看完整的手册,那么可以用-h
选项获得更简明的“help”
输出:
# 想要获取 git config 命令的快速参考
git config -h
# 在终端里面打开简明的“help”输出
前期准备工作完毕之后,接下来就可以开始进行git仓库的获取了,获取git仓库有两种方式:
以上两种方式都能够在自己的电脑上得到一个可用的Git仓库
注意:两个仓库之间是不能够合并成一个的
将尚未进行版本控制的本地目录转换为Git仓库
从其他服务器克隆一个已存在的Git仓库
如果是使用的vue脚手架
搭建的项目,这一步可以直接跳过,因为脚手架会帮我们完成这一步
但是不是使用vue脚手架
搭建的项目,并且如果自己有一个尚未进行版本控制的项目目录,想要用Git来控制它,需要执行如下两个步骤:
git init
命令会创建一个名为 .git 的隐藏目录,这个 .git目录就是当前项目的Git仓库,里面包含了初始的必要文件,这些文件是Git仓库的必要组成部分
当我们的仓库建好之后,首先先了解一下git的一些基本命令。
如果检查文件状态有显示有文件未被跟踪到,没有提交到仓库,则操作上诉指令,将文件提交到仓库,然后再检查自己的仓库的文件状态都为已经提交之后,再开始下一步,将我们的本地仓库上传到远程仓库去。
在项目目录中,通过鼠标右键打开"Git Bash
"
执行git init
命令将当前的目录转化为Git仓库
就是上面说的常规方法
在目录栏中输入cmd 然后输入相关命令
按住shift 然后选择"在此处打开Powershell窗口" 然后输入相关命令
git status
查看仓库状态
git add .
将文件新增到仓库暂存区
git commit -m
'此次提交的说明'
前提是你必须拥有一个GitHub
或者Gitee
账号,然后登陆并创建一个远程仓库
利用这两种方式可以实现和代码托管平台之间的通信
Github
上的远程仓库,有两种访问方式,分别是 HTTPS
和 SSH
。它们的区别是:
HTTPS
:零配置;但是每次访问仓库时,需要重复输入 Github
的账号和密码才能访问成功。HTTPS方式直接按照步骤推送就可以了
SSH
:需要进行额外的配置;但是配置成功后,每次访问仓库时,不需重复输入 Github
的账号和 密码
SSH
公钥在推送到远程仓库之前,先确认是否有配置公钥,如果配置过了则跳过,没有配置过则需要进行配置。生成SSH key
:
Git Bash
粘贴如下的命令,并将[email protected]
替换为注册 Github
账号时填写的邮箱:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
连续敲击 3 次回车,即可在 C:\Users\用户名文件夹.ssh 目录中生成 id_rsa 和 id_rsa.pub 两 个文件
SSH key
:使用记事本打开 id_rsa.pub
文件,复制里面的文本内容
在浏览器中登录 Github ,点击头像 ---> Settings
---> SSH and GPG Keys
---> New SSH key
将 id_rsa.pub
文件中的内容,粘贴到 Key
对应的文本框中
在 Title
文本框中任意填写一个名称,来标识这个Key
从何而来
打开 Git Bash ,输入如下的命令并回车执行:
ssh -T [email protected]
# 如果是Gitee 就是输入
ssh -T [email protected]
上述的命令执行成功后,可能会看到出现包含如下提示消息:
输入 yes
之后,如果能看到类似于下面的提示消息,证明SSH key
已经配置成功了:
其余的则根据步骤来基于 SSH 将本地仓库上传到github或gitee上。对号入座,然后复制粘贴指令。如下:
推送成功后,刷新你的远程仓库页面,刷新为出现内容,即表示成功
如果没本地仓库的话,也可以将远程仓库直接克隆到本地,打开git bash
,输入如下命令并执行
git clone 你远程仓库的地址
关于依赖的安装如下所示:
npm install
# 或者
yarn install
这样初始化Git仓库并推送到远程仓库就完成了