Git其原理主要是每个客户端本地拥有一个私有数据库,里面记录着每次的更改记录,同时在远程公共端有一个”公开“的数据库,平时在本地操作只会对本地数据库进行修改,一旦执行push等操作则会将本地的资源推送到服务端,同时记录相关信息。
安装Git
官网下载地址:https://git-scm.com/downloads
安装完第一步就是初始化配置
配置用户信息
git config --global user.name "chonglu"
git config --global user.email luchong1999@outlook.com
“chonglu”是你自己设置的名字,"luchong1999@outlook.com"是你的邮箱地址,名字会在提交记录上显示
再次强调,如果使用了 –global 选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情,Git 都会使用那些信息。当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 –global 选项的命令来配置。
检查配置信息
git config -l
远程数据库和本地数据库
- 远程数据库: 配有专用的服务器,为了多人共享而建立的数据库。
- 本地数据库: 为了方便用户个人使用,在自己的机器上配置的数据库。
修改记录的提交
若要把文件或目录的添加和变更保存到数据库,就需要进行提交。
执行提交后,数据库中会生成上次提交的状态与当前状态的差异记录(也被称为revision)。
系统会根据修改的内容计算出没有重复的40位英文及数字来给提交命名。指定这个命名,就可以在数据库中找到对应的提交。
Tips:不同类别的修改 (如:Bug修复和功能添加) 要尽量分开提交,以方便以后从历史记录里查找特定的修改内容。
工作树和索引
在数据库和工作树之间有索引,索引是为了向数据库提交作准备的区域。一般在执行Commit时,不是直接将工作树的状态保存到数据库,而是将设置在中间索引区域的状态保存到数据库。因此,要提交文件,首先需要把文件加入到索引区域中。
合并修改记录
在执行pull之后,进行下一次push之前,如果其他人进行了推送内容到远程数据库的话,那么你的push将被拒绝。
解决冲突
如果远程数据库和本地数据库的同一个地方都发生了修改的情况下,因为无法自动判断要选用哪一个修改,所以就会发生冲突。这时候我们需要手动去选择使用哪一个的内容
Tips:==分割线上方是本地数据库的内容,下方是远程数据库的编辑内容。
修正后再次尝试推送