一张脑图直接把所有会出现想知道的git命令全部解决
基本原理
-
版本库
.git
- 使用git管理文件
(git init)
时候其中生成的.git
文件,这个文件称之为版本库。 .git文件
另外一个作用就是它在创建的时候,会自动创建master分支,并且将HEAD指针指向master分支。
- 使用git管理文件
-
工作区
- 本地项目存放文件的位置
- 可以理解成图上的workspace
-
暂存区 (Index)
- 暂时存放文件的地方,通过add命令将工作区的文件添加到缓冲区
-
本地仓库(Repository)
- 使用commit命令将暂存区的文件添加到本地仓库
- HEAD指针指向的就是master分支
-
远程仓库(Remote)
- 举个例子,当我们使用GitHub托管我们项目时,它就是一个远程仓库。
- 通常我们使用clone命令将远程仓库代码拷贝下来,本地代码更新后,通过push托送给远程仓库
Git文件状态
git status
Changes not staged for commit
工作区有该内容,但是缓存区没有,需要git add
Changes to be committed
文件放在缓存区了,我们需要git commit
nothing to commit, working tree clean
将本地的代码推送到远端即可
基本操作流程
-
创建本地仓库 git init
git init
-
链接本地仓库与远端仓库
git remote add origin url
origin默认是远端仓库别名 url 使用https或者ssh的方式新建
-
检查配置信息
- git config --list
-
Git user name 与email
git config --global user.name "yourname"
git config --global user.email "your_email"
-
生成SSH密钥
ssh-keygen -t rsa -C "邮箱"
cd ~/.ssh 里面有一个文件名为id_rsa.pub,把里面的内容复制到git库的我的SSHKEYs中
-
常看远端仓库信息
- git remote -v
-
远端仓库重新命名
- git remote rename old new
-
提交到缓存区
- git add . 全部上传到缓存区
- git add 指定文件
-
提交到本地仓库
- git commit -m 'some message'
-
提交远程仓库
- git push <远程主机名> <本地分支名>:<远程分支名>
-
查看分支
- git branch
-
创建新分支
- git branch
-
切换分支
- git checkout
-
创建分支并切换
- git checkout -b
-
删除分支
- git branch -d
-
删除远程分支
- git push -d
-
切换分支
- git checkout
参考文章:https://juejin.cn/post/6869519303864123399?searchId=20240902091132C0EEA2E9FDB0DEDF7442