Git——版本控制工具
程序员文章站
2024-03-24 16:36:58
...
文章目录
一、什么是 Git
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
简单来说 Git 就是一个版本控制工具!
二、Git 的安装
下载地址: https://git-scm.com/download/win
在官网下载后,根据自身需求安装即可。
三、Git 的常用指令
- 身份名称配置:git config --global user.name (后接带引号字符串为配置名称,否则为查看)
- 身份邮箱配置:git config --global user.email (后接带引号字符串为配置邮箱,否则为查看)
- 初始化仓库:git init
- 提交本地项目到暂存区:git add (三种格式:+文件名/./文件名1 文件名2 )
- 提交项目到本地仓库:git commit -m "提交的描述"
- 查看日志:git log 或者 git log --pretty=oneline
- 查看历史操作日志:git reflog
- 查看一条历史提交记录:git log 提交id -1
- 查看这条历史提交记录具体修改的内容:git log 提交id -1 -p
- 版本回退:git reset --hard 提交id(至少前四位)
- 查看分支:git branch
- 创建分支:git branch 分支名
- 切换分支:git checkout 分支名
- 创建并切换分支:git checkout -b 分支名
- 合并分支:git merge 被合并的分支名
- 删除分支:git branch -d 分支名
- 线上远程仓库克隆到本地:git clone 线上仓库地址
- 本地仓库推送到线上远程仓库:git push
- 线上远程仓库拉取项目到本地仓库:git pull
- 创建.gitignore文件:touch .gitignore
- 查看文件修改情况:git status
- 查看文件更改的内容:git diff
- 查看具体哪个文件的更改内容:git diff 文件夹/文件名
四、Git 使用——配置身份(第一次安装后配置一次即可)
1. 配置名称与邮箱
在桌面(或其他空白地方)处右击,选择 Git Bash Here,输入以下指令:
git config --global user.name “此处为你的名称”
git config --global user.email “此处为你的邮箱”
2. 查看是否配置成功:
输入以下指令:
git config --global user.name
git config --global user.email
五、Git 使用——本地使用
1. 创建本地文件仓库
- 在合适的地方(路径最好非中文)右击 Git Bash Here 输入 mkdir + 文件名 创建文件夹并进入。
- 输入指令 git init 将这个文件夹初始化为一个仓库
2. 提交本地项目到暂存区
- 在该文件夹下创建自己的项目(以test1.txt文件为例)
- 输入指令 git add 将项目提交到暂存区
3. 提交暂存区项目到本地仓库
- 输入指令 git commit -m “提交的描述” 将项目提交到本地仓库
4. 版本回退
- 查看日志信息,获取每次 commit 的 id(黄色的一长串)
输入指令:git log 或者git log --pretty=oneline
- 输入回退指令:git reset --hard 提交id(至少前四位)
- 当回退后再执行log指令,当前版本之后的提交id将无法获得,想要查看以回到最新版本需要查看历史操作日志,输入指令:git reflog
5. 分支操作
- 查看分支:git branch
- 创建分支:git branch 分支名
- 切换分支:(在不同的分支之间的操作互不影响)git checkout 分支名
- 合并分支:git merge 被合并的分支名
- 删除分支:git branch -d 分支名 (想删除该分支要先切换出去)
- 创建并切换分支:git checkout -b 分支名
六、Git 使用——配合 Github 使用
1. 在 Github 上创建仓库
2. 将线上远程仓库克隆到本地,输入指令:git clone 线上仓库地址
3. 进入本地仓库进行操作,如 五、Git 使用——本地使用 中所述
4. 将本地仓库推送到线上远程仓库,使用指令:git push
- 首次往线上远程仓库提交项目时需要鉴权,打开本地仓库隐藏文件夹.git里面的config,修改里面的内容:
原文件内容:
[remote "origin"]
url = https://github.com/NicholasHzf/GitTestRepository.git
修改后:用户名和密码为 GitHub 用户名与密码
[remote "origin"]
url = https://用户名:密码@github.com/NicholasHzf/GitTestRepository.git
- 非首次往线上远程仓库提交项目,直接输入指令 git push ,刷新 GitHub 页面并查看
5. 从线上远程仓库拉取项目到本地仓库,使用指令:git pull 在线上修改readme.txt文件,然后拉取到本地,打开检验是否成功:
6. 冲突的产生与解决
- 产生:线上修改后,没有先pull到线下,线下直接进行了修改,双方不一致,导致冲突发生,无法push项目到线上
- 解决:先 pull 到本地,修改后再 push 到线上
7. 忽略文件
Git 提供了一种可配性很强的机制来允许用户将指定的文件或目录排除在版本控制之外。它会检查代码仓库的目录下是否存在一个名为 .gitignore 的文件,若存在,则一行行读取这个文件的内容,并把每一行指定的文件或目录排除在版本控制之外。(.gitignore 使用 touch .gitignore 创建.gitignore文件,该文件中指定的文件或目录是可以使用“*”通配符的,#xxx为注释)
下一篇: P1149 火柴棒等式