git常用命令
配置git
- 全局用户配置
git config --global user.name "用户名"
git config --global user.email "邮箱"
- 只对当前仓库有效的用户配置
git config --local user.name "用户名"
git config --local user.email "邮箱"
- 查看git的配置
git config --global --list # 查看全局git配置
git config --local --list # 查看当前仓库的git配置
git的基本操作
- 初始化仓库
git init
- 查看工作区被修改的文件
git status
- 把工作区的文件添加到暂存区
git add . # 将新建的文件,文件的修改添加到暂存区
git add -u # 将新建的文件,文件的删除添加到暂存区
git add -A # 或者
git add -all # 将新建的文件,文件的修改,文件的删除添加到暂存区
git add 文件名1 文件名2 文件名3 …… # 将多个指定文件添加到暂存区 文件名用空格分开
- 用git操作文件
git rm 文件名 # 用 rm 命令删除文件
git mv 旧文件名 新文件名 # 用git命令给文件重新命名
git reset --hard # 清空工作区和暂存区(这个命名很危险)
git commit -m "提交注释" # 提交
git reset HEAD 文件名 # 将改文件移出暂存区
- 用log查看提交历史
git log # 查看当前分支全局提交历史
git log --graph # 图形化查看当前分支全局提交历史
git log -n # 查看当前分支最后提交的n个commot历史 (n>1)
git log --all # 查看所有分支的历史
git log --all --graph # 查看图形化全局分支提交历史
git log --oneline # 查看简洁的图形提交历史
git log --oneline -n # 查看简洁的前n条提交历史 (n>1)
git log --oneline --graph --all # 查看全部分支的简洁提交历史
git log 文件名 # 查看该文件变更的所有提交历史
git blame 文件名 # 查看该文件最后修改的提交历史及其作者
gitk # 打开图形界面工具查看提交历史
- 用 .gitignore 文件忽略不需要git管理的文件
# 文件名 :文件和文件夹都会被忽略
# 文件名/ : 不会忽略文件,只忽略文件夹
- 查看创建分支
git branch # 查看分支,带*号的是当前活跃分支
git branch -v # 查看本地分支
git branch -av # 查看本地和远端所有分支
git branch -rv # 查看远端所有分支
git branch 新分支名 # 基于当前分支创建新分支
git branch 新分支名 已存在分支名 # 基于已存在分支创建新分支
git branch 新分支名 某存在分支commit的hash # 基于某存在的分支某次commit创建新分支
git checkout 某分支名 # 用 checkout 切换到某分支
git checkout -b 新分支名 # 创建新分支并切换到新分支
git branch -d 某分支名 # 删除本地某分支
git branch -D 某分支名 # 强行删除本地某分支
git branch 某分支 commit的hash # 通过hash恢复被删除的某分支
git reflog # 不知道hash通过reflog找出并恢复被删除的分支
git remote prune origin # 删除远端不存在的所有本地分支
- 关联远程分支
git remote add origin 分支名 # 关联远程分支
git push --set-upstream origin 分支名 # 关联远程分支
git push origin -d 分支名 # 删除远程分支
git push origin -D 分支名 # 强制删除远程分支
git push origin 本地分支名:远程分支名 # 推送本地分支到远程(远程不存在分支)
开发工具