记录一些些 git 常用指令.
基础指令·
git init 创建一个空的仓库
git add <name> 把文件 <name> 放到暂存区 也可以是文件夹
git commit -m <message> 提交暂存区到仓库 并且注释是 <message>
git status 查看目前仓库的信息 包含哪些文件修改了 哪些还没提交
git diff <name> 查看 <name> 文件 本地当前版本与仓库中版本的区别
git log 从最近到最远 查看日志 每次改了啥子
版本相关·
git reset --hard <commit_id> 回退到某个版本 <commit_id> 指的是 git log 中 commit 后面那一大串玩意儿 <commit_id> 填 HEAD^ 表示上一个版本 HEAD^^ 表示上两个版本 HEAD~100 表示之前一百个版本
git reflog 可以看命令历史 记录了每一次命令 git log 里没有的东西他也有
假设你改了文件 但还没有把他 add 到暂存区 可以用 git restore <name> 把他还原成仓库中的样子
假设你改了文件 并且把他 add 到了暂存区 先用 git restore --staged <name> 把他从暂存区扒出来 然后再 git restore <name> 还原
删除文件 首先在本地把文件删掉 然后 git rm <name> 将其从仓库中删掉
如果本地误删除 但还没从仓库中删掉 可以 git restore <name> 将其恢复
远程仓库·
在本地仓库下 运行 git remote add origin <*.git> 把这个远程仓库的地址添加到本地
git push -u origin <branch name> 把本地的仓库推送到远程仓库上
第一次需要 -u 去把本地跟远程连接起来 以后只要 git push 就可以了
git remote -v 查看本地连接的远程仓库信息
git remote rm <name> 删除远程仓库与本地的绑定关系
git clone <*.git> 从远程克隆一个本地库
分支管理·
git branch <name> 新建一个分支
git branch 查看所有分支和当前分支
git branch -d <name> 删除一个分支
git checkout <name> 或者 git switch <name> 切换分支
git checkout -b <name> 或者 git switch -c <name> 新建一个分支并切换过去
git merge <name> 合并分支到当前分支上
git push origin <branch_name> 将本地某个分支推送到远程
git push origin -d <branch_name> 删除远程分支
如果推送失败 先用 git pull 抓取新的(别人的)提交
git branch --set-upstream-to=origin/dev dev 将本地的 dev 分支 与 远程的 dev 分支连起来
git checkout -b <branch-name> origin/<branch-name> 在本地创建和远程分支对应的分支