基本用法
-
初始化仓库
git init初始化仓库之后再当前目录下会自动生成一个 .git 目录 当前目录下所有的文件都属于 untracked 未跟踪 -
查看当前工作区的文件状态
git status -
将工作区的未跟踪或修改的文件添加到暂存区
git add . -
将暂存区的文件提交到本地代码库
git commmit -m '提交信息' -
将本地代码库的代码上传到远程代码库
git push -
将远程代码库下载到本地代码库
git pull -
将远程代码库下载到本地代码库
git clone 仓库地址 -
在执行 git push 之前,要保证当前的本地仓库和远程仓库关联
查看本地仓库是否有远程仓库
git remote -v // 短指令
git remote --verbose // 长指令 效果同上
添加远程仓库的关联
git remote add 关联的远程仓库名(一般都是 origin) 远程仓库的地址(ssh 地址)
删除远程仓库的关联
git remote remove 远程仓库名(一般都是 origin)
- 查看提交日志
git log
git log --oneline // 一行的形式展现, 显示精简信息
- 切换到以前的版本
--hard 一定要慎用 将工作区没有提交的代码全部清空,不保存,直接切换
--soft 可以灵活使用, 将工作区没有提交的代码先添加到暂存区后再切换
git reset --hard commit hash
git reset --hard HEAD~0 // 小技巧, 可以用 HEAD~0 表示回到最新的一次提交
查看历史操作记录 git reflog
多分支
- 创建分支
git branch 分支名 // 使用频率较低
git checkout -b 分支名 // 常用, 创建并切换至指定分支
- 查看分支
git branch -a // 查看所有分支(包括远程分支)
- 切换分支
git checkout 分支名
- 合并分支
将指定的分支合并到当前分支, 一般执行 merge 的分支都是 master
git merge 分支名
- 删除分支
git branch -d 分支名 // 如果在子分支上,删除不了当前分支。如果这个分支上的代码代码没保存,也删除不了
git branch -D 分支名 // 强制删除 慎用