Git使用流程

Git与SVN区别

  • SVN是集中式版本控制系统,版本库是集中放在中央服务器的,需要从中央服务器获取最新的版本。
  • Git是分布式版本控制系统,它没有中央服务器,每个人的电脑就是一个完整的版本库。

Git工作流程

在这里插入图片描述

  • Worksapce:工作区,实际编写代码的地方,文件状态为modified表示已修改。
  • Index/Stage:暂存区,临时存放的地方,文件状态为staged表示未提交。
  • Repository:本地仓库,存放本地历史版本信息。
  • Remote:远程仓库。

四个区域之间的关系

在这里插入图片描述

工作区和暂存区的区别

  • 工作区:就是工作目录下的所有文件。
  • 版本库:工作区里有一个隐藏目录.git,这个不属于工作区,这个是版本库,版本库里存放了stage暂存区,git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD。

基本操作

常用命令

在这里插入图片描述

配置个人信息

查看个人信息:
git config --list

配置个人信息:
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

创建和提交

HEAD 始终指向所处分支的最新的提交点。

创建仓库:
git init

添加到暂存区:
git add readme.txt

提交到本地仓库:
git commit -m "第一次提交"

查看是否还有文件未提交:
git status

查看文件差异:
git diff readme.txt

查看提交记录:
git log
git log --pretty=oneline //简介显示
git log --oneline //简介显示

查看版本号:
git reflog

版本回退(对本地库的操作):
git reset --hard HEAD^ 退回上一个版本
git reset --hard HEAD^^ 退回上上个版本
git reset --hard <版本号> 回退指定版本

版本回退(对暂存区的操作):
git reset HEAD readme.txt

git提交文件到版本库有两步:

  1. 使用git add将文件添加到暂存区。
  2. 使用git commit将暂存区的文件提交到当前分支上。

远程仓库

ssh-keygen -t rsa -C "邮箱账号"

执行命令后,生成id_rsaid_rsa.pub两个文件,id_rsa是私钥不能泄露,id_rsa.pub是公钥可以告诉其他人。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rZRCiT84-1597134636589)(C:\Users\housikai\AppData\Roaming\Typora\typora-user-images\1597131901169.png)]

添加远程仓库:
git remote add origin <仓库地址> //远程库默认名为origin

推送到远程仓库:
git push -u origin master //第一次推送时,需要加-u
git push origin master

克隆远程仓库:
git clone <仓库地址>

从远程库拉取:
git pull origin master //pull = fetch + merge

从远程库下载到本地库
git fetch origin master //下载到本地库,但是工作区没有更新
git merge FETCH_HEAD //本地库合并到工作区

查看远程库信息:
git remote

查看远程库详细信息:
git remote -v

分支

查看当前分支:
git branch

查看所有分支:
git branch -a 

创建分支:
git branch dev

切换分支:
git checkout dev

创建并切换分支:
git checkout -b dev

合并分支内容:
git checkout dev //在master分支上合并dev分支内容

删除分支:
git branch -d dev

多人协作流程

clone远程库到本地

git clone 远程库地址 [路径]

远程库推送新建分支

在本地新建分支dev
git branch dev
将本地库dev分支提交到远程库
git push origin dev

将远程库的dev分支切换到本地库的dev分支

git checkout -b dev orign/dev

修改代码并推送到远程库的dev分支

git push origin dev
Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐