git常用命令
git-参数设置
命令 | 作用 | 备注 |
---|---|---|
git config --global user.name 用户名 | 设置全局用户名,信息记录在~/.gitconfig文件中 | |
git config --global user.email 邮箱 | 设置全局邮箱地址,信息记录在~/.gitconfig文件中 | |
git init | 初始化本地仓库 | |
git remote add origin 仓库链接 | 将本地仓库和远程仓库关联 | ssh方式需要部署个人公钥到远程仓库,http方式需要账号密码 |
git-本地仓库管理
命令 | 作用 | 备注 |
---|---|---|
git add 文件名 | 将指定文件加入暂存区 | |
git add . | 将所有有修改的文件放入暂存区 | 只提交新增和修改,不提交删除 |
git add -A | 将工作区修改全部放入暂存区 | 全部提交,包括删除操作 |
git rm --cached 文件名 | 将文件重仓库索引目录中删掉 | |
git commit -m “注释信息” | 将暂存区的文件内容提交到当前分支 | |
git status | 查看仓库状态 | git config --global color.ui true开启颜色提示 |
git diff 文件名 | 查看工作区的文件相比于暂存区的文件作了什么修改 | |
git checkout – 文件名 | 将指定文件没有同步到暂存区的修改全部撤销 | |
git restore 文件名 | 将指定文件没有同步到暂存区的修改全部撤销 |
git-本地仓库和远程仓库同步
命令 | 作用 | 备注 |
---|---|---|
git push -u | 将当前分支推送到远程仓库 | 第一次需要-u,后面就不需要-u |
git clone 远程仓库链接 | 将远程仓库文件下载到本地仓库工作区 | |
git pull | 将远程仓库的当前分支与本地仓库的当前分支合并 | 本地工作区修改后需要stash暂存pull才起作用 |
git pull origin 分支名 | 将远程仓库的分支与本地仓库的当前分支合并 |
git-分支操作
命令 | 作用 | 备注 |
---|---|---|
git checkout -b 分支名 | 创建并切换到这个分支 | |
git branch 分支名 | 创建新分支 | |
git branch | 查看所有分支和当前所处分支 | |
git checkout 分支名 | 切换到这个分支 | |
git merge 分支名 | 将分支合并到当前分支 | |
git branch -d 分支名 | 删除本地仓库的分支 | |
git push -d origin 分支名 | 删除远程仓库的分支 | |
git push --set-upstream origin 分支名 | 设置本地分支对应远程分支 | |
git checkout -t origin/分支名 | 将远程分支拉取到本地 |
git-版本管理
命令 | 作用 | 备注 |
---|---|---|
git log | 查看当前分支的所有版本 | |
git reflog | 查看HEAD指针的移动历史(包括被回滚的版本) | |
git reset --hard HEAD^ | 将代码库回滚到上一个版本 | |
git reset --hard 版本号 | 回滚到某一特定版本 |
git-stash栈暂存
- 适用于当前分支修改到一半需要切换到别的分支去处理问题时
- stash是在本地的,并不会通过git push上传到远程仓库
命令 | 作用 | 备注 |
---|---|---|
git stash | 将工作区和暂存区中尚未提交的修改存入栈中 | |
git stash save “注释” | 将工作区和暂存区中尚未提交的修改存入栈中,并添加注释 | |
git stash apply | 将栈顶存储的修改恢复到当前分支,但不删除栈顶元素 | |
git stash pop | 将栈顶存储的修改恢复到当前分支,同时删除栈顶元素 | |
git stash list | 查看栈中所有元素 |