目录
- 前言
- 一、git简介
- 二、git工作流程
- 三、安装git并配置git
- 3.1 配置用户名和邮箱
- 3.2 配置.gitignore文件(可选)
- 3.3 配置ssh key(可选)
- 四、git基本命令
- 4.1 创建本地仓库
- 4.2 将工作区内容提交到本地仓库
- 4.3 将本地仓库内容推送到远程仓库
- 参考文献
前言
本篇文章介绍git的一般工作流程,需要读者具备linux操作系统的常用命令
一、git简介
Git是一个开源的分布式版本控制软件,常用于项目的版本管理
Git是Linux Torvalds为了帮助管理Linux内核开发而开发出来的一个版本控制软件
二、git工作流程
git的工作流程如下图所示:
工作区:一般指某个目录下除了.git文件的其他空间
暂存区:一般指保存在 .git 目录下的 index 文件
本地仓库:一般指某个目录下的.git文件
远程仓库:一般指保存在远程服务器的.git目录
三、安装git并配置git
git下载和安装过程这里不一一赘述,读者可根据自己的操作系统选择对应的版本下载并安装就可以。
下面主要叙述git的配置
注意:以下操作都是在git客户端提供的命令行界面下
3.1 配置用户名和邮箱
为了让项目管理者了解本地仓库的提交记录,需要配置用户名和邮箱
git config --global user.name 用户名
git config --global user.email 邮箱
想要查看配置后的结果
git config --list
3.2 配置.gitignore文件(可选)
配置.gitignore的作用是可以过滤文件,让本地仓库忽略这些文件
step1 在用户目录创建.gitignore文件
touch ~/.gitignore
在用户目录创建一个.gitignore文件
假设您的操作系统是windows,则会在以下目录生成.gitignore文件
C:\用户\用户名\.gitignore
step2 在.gitignore文件配置过滤规则,读者根据自己的需求配置
#利用vi编辑.gitignore文件
vi ~/.gitignore
step3 将.gitignore文件配置到git
git config --global core.excludesfile ~/.gitignore
3.3 配置ssh key(可选)
step1 在用户目录生成.ssh文件,这个文件包含一个私钥文件和公钥文件
#将工作目录切换到用户目录
cd ~/
#生成.ssh文件
ssh-keygen -t rsa -C "youremail"
step2 查看公钥内容,复制公钥内容
#切换到.ssh目录下
cd ~/.ssh/
#查看公钥的内容
cat id_rsa.pub
step3 将复制的公钥内容配置到对应的代码托管平台,例如gitee和github,这里为gitee
四、git基本命令
4.1 创建本地仓库
方式一 在本机手动创建本地仓库
git init
在某个工作区初始化一个本地仓库
step1 在本机选择一个目录作为一个本地仓库的工作区
step2 在工作区下使用git init
命令初始化一个本地仓库
方式二 从远程服务器克隆一个仓库
step1 在本机选择一个目录作为一个本地仓库的工作区
step2 在工作区下使用git clone
命令,从远程服务器克隆一个仓库作为本地仓库
git clone <远程仓库URL>
在某个工作区克隆一个远程仓库
4.2 将工作区内容提交到本地仓库
step1 将工作区内容添加到暂存区,以便本地仓库对工作区的内容进行追踪
git status
在添加之前,可以查看工作区有哪些内容需要被追踪
方式一
git add 文件
将工作区需要被追踪的内容添加到暂存区
git add .
把工作区所有内容添加到暂存区
step2 将暂存区的内容提交到本地仓库,以便本地仓库可以与工作区的内容保持一致
git commit -m '注释'
将暂存区的内容提交到本地仓库
4.3 将本地仓库内容推送到远程仓库
step1 将远程仓库的URL保存到本地仓库
git remote -v
查看本地仓库保存的远程仓库URL
git remote add 远程仓库名 远程仓库URL
说明:
远程仓库名是为了在本机操作方便而给远程仓库起的别名,所以一般也称为别名
step2 拉取远程仓库内容到本地仓库,推送之前保持两者的一致性
git pull --rebase 远程仓库名 远程仓库分支名:本地仓库分支名
说明:
将远程仓库分支与本地仓库分支进行合并
如果合并的是当前分支,则可简写为
git pull --rebase 远程仓库名 远程仓库分支
step3 将本地仓库内容推送到远程仓库
git push 远程仓库名 本地仓库分支名:远程仓库分支名
说明:
将本地仓库的分支与远程仓库分支进行合并
如果本地仓库分支名与远程仓库分支名相同,则可简写为
git push 远程仓库名 远程仓库分支名
参考文献
[1] https://blog.csdn.net/qq_29493173/article/details/113094143
[2] https://blog.csdn.net/f_957995490/article/details/130850727