git操作
https://www.bilibili.com/video/BV1HM411377j
初始化
配置用户名:git config --global user.name "用户名"
配置邮箱:git config --global user.email "用户邮箱"
存储配置:git config --global credential.helper store
查看配置:git config --global --list
参数设置:
仓库
创建仓库
本地创建:git init "仓库名",省略仓库名会直接在当前地址创建。
远程克隆:git clone <url>
四个区域和文件状态
文件操作
文件状态
git status,可查看仓库内的状态
查看仓库文件
git ls-files
将文件添加到暂存区
git add <file>
文件提交
git commit,将暂存区的文件提交,不会提交工作区的文件。
git commit -m用于提交暂存区的文件
git commit -am用于提交跟踪过的文件,可以写成git commit -a -m,但不能交换参数位置
注意:提交的时候需要添加说明,如弹出要求,使用git commit -m '内容说明'即可
仓库提交历史记录
git log,添加--oneline可只显示版本号
版本回退
git reset,包含三种模式:
git reset --soft回退并保留工作区和暂存区内容
git reset --hard回退,不保留工作区和暂存区内容
git reset --mixed默认参数,保留工作区内容,不保留暂存区内容
通过git log -oneline查看提交内容的版本号,在git reset后加上版本号即可指定版本,也可使用HEAD^回到上一个版本。也可使用版本号撤回误操作的指令。
比较差异
git diff默认比较工作区和暂存区之间的差异
如图所示,文件内容若有差异,会显示出来。若无差异则无内容。
加上HEAD会比较工作区与版本库的差异,加上cached会比较暂存区与版本库之间的差异。
加上两个版本号id可以比较两次提交之间的差异。
加上文件名,只会显示指定文件的差异内容。
文件删除
git rm <文件名>和git rm -f <路径>删除对应文件/路径内的文件,然后使用git commit提交,删除仓库内对应文件。
忽略文件
在.gitignore文件中写入一个未被添加至版本库的文件/文件夹,git会忽略此文件/文件夹,不进行提交。
如下图所示,hello.log不再显示:
远程仓库
SSH配置和克隆仓库
通过在github上配置SSH密钥,可以实现主机与github之间的免密仓库操作。主机只要配置过一次即可。
Github配置ssh key的步骤(大白话+包含原理解释)_github生成ssh key-CSDN博客
.ssh文件位置:C:\Users\Administrator\.ssh
使用git clone <SHH地址>克隆仓库
git push将本地仓库更新内容推送至远程仓库
git pull拉取远程仓库更新内容
分支上传与合并
创建分支:
1 | git checkout -b '分支名' |
提交分支:
1 | git add . |
将分支推送至远程仓库:
1 | git push -u origin '刚刚的分支名' |
将本地分支合并到本地main分支:
1 | git checkout main |
提交并更新至远程仓库:
1 | git push |










