-
博客简介
因为git是常用的版本控制,之前也已经用过,刚好在搭载hexo项目当中反复用到git,之前在开发项目已经用到过git来做版本控制,但不是很深入和归纳,借着这次搭载博客来加强对git的理解。
-
git 历史
Linux内核开源项目有太多人提交代码给作者,结果太多了,于是乎后面迭代演变之后,就诞生git版本控制了。可以说一个Linux生出了git儿子。
-
git与svn的区别
svn是基于远程服务器的,本地是没有仓库的所有版本代码。而git是基于分布式的,每个开发用户都有远程仓库的所有版本代码。所以此博客只讲git。
-
git 全局配置
git的全局配置有两个,一个是system,一个是全局配置。git config --system -l 相关配置目录如下 git安装目录/etc/gitconfig
目录截图如下:
全局配置。一般为上传作为本地用户认证使用,就是证明你是谁。git config --global -l 相关配置目录如下 C:/Users/用户名/.gitconfig
配置个人用户
git config --global user.name = "" git config --global user.email = "" // 填写用户名和用户邮箱即可
-
git 工作原理
-
有四个区域
当地目录:就是本地文件啦
暂存区:通过add 提交到暂存区,可以通过git status查看是否上传到暂存区,或者查看是否被追踪
本地仓库: 通过commit 上传到本地仓库
远程仓库: gitee或者github上的仓库创建
-
命令集合:
当地目录 -》暂存区 -》本地仓库 -》 远程仓库
add -》 commit -》 push
《-checkout《-reset 《- pull
-
-
git 项目创建
git init 或者 git clone 【url】
-
git 项目提交
git add . 提交到暂存区,追踪文件 git commit -m "" 提交到本地仓库 git push 提交到远程仓库 git push orign master 提交到远程仓库的master分支
-
git 忽略项目
默认生成的git项目下,有文件可以忽略不要提交的内容
-
git 远程仓库
git init
将.git文件复制到项目中即可
-
git ssh
提交免登录,通过
ssh-keygen -t rsa -C "标识你的认证(邮箱,主机名即可)"
C:/User/用户名/.ssh
ssh是针对每次上传的时候免用户名和密码登录。直接github配置密钥即可
- git 分支
// 此代码为创建分支 如不加后缀,则是查看所有的分支
git branch 【】
// 切换分支
git checkout 【】
// 合并分支,将【】内的分支合并到当前的分支
git merge 【】
假如出现分支冲突
一种是重新修改文件,或者选择到底保存谁的修改文件。