Git常用命令整理
克隆
git clone https://github.com/gocuber/cuber.git
git clone https://github.com/gocuber/cuber.git blog
查看状态
git status # 查看状态
更新提交与推送
git pull # 更新
git add * # 跟踪
git commit -m 'log' # 提交
git push origin master # 推送
分支
git branch # 查看本地分支
git branch -r # 查看远程分支
git branch -a # 查看本地+远程分支
git branch 2.0 # 创建分支
git checkout 2.0 # 切换分支
git checkout -b 2.0 # 创建并切换分支
git merge 2.0 # 合并指定分支到当前分支
git branch -d 2.0 # 删除指定的本地分支(未合并的不能删)
git branch -D 2.0 # 强制删除指定的本地分支
git push origin 2.0 # 将分支推送到远端仓库
git push origin :2.0 # 删除远端仓库分支 分支名前的冒号代表删除
git push origin --delete 2.0 # 同上也是删除远端仓库分支
git branch --set-upstream-to=origin/dev dev # 本地与远程分支关联
git fetch -p # 清理分支本地缓存
git remote prune origin # 删除本地无效的远程分支 远程已删除的分支 本地执行 git branch -a 显示还存在 执行此命令可以清除
分支比较合并
git fetch origin dev:dev2 # 拉取远程dev分支到本地 创建本地dev2分支
git diff dev2 --stat # 比较本地dev2分支 与当前本地分支的差异
git checkout dev2 -- app/User.php # 检出本地dev2分支文件覆盖当前分支
git status add commit push # add commit push
git merge dev2 # 合并本地dev2分支 到当前本地分支
git branch -D dev2 # 删除本地dev2分支
标签
git tag # 查看当前分支下的标签
git log --pretty=oneline # 查看log
git tag v2.0.0 abcdeabcde # 打标签
git tag -a v2.0.0 -m "v2.0.0" abcdeabcde # 打标签 -a 标签名 -m 说明
git tag -d v2.0.0 # 删除标签
git push origin v2.0.0 # 推送指定标签到仓库
git push origin --tags # 推送全部标签到仓库
git push origin :refs/tags/v2.0.0 # 删除远程标签
log查看版本历史
git log # 按q退出
git log --stat # 查看简略统计信息
git log --pretty=oneline # 格式的方式展示提交历史 oneline 将每个提交放在一行显示
git log -p -2 # 选项 -p 显示提交的内容差异 -2 显示最近两次提交
diff对比
git diff # 显示所有改动
git diff app/User.php # 显示某文件的改动
git diff branch1 branch2 --stat # 对比两个分支差异文件
git diff branch1 branch2 # 对比两个分支差异详细
清理Git
git gc --prune=now # 清理Git
查看状态与签出文件
git status # 查看状态
git checkout -- 1.log # 签出指定文件
git checkout -- p/p/* # 签出指定目录
git checkout -- * # 签出当前分支全部文件
找回本地及远程全部已删除的分支文件
git log -g --grep "api" --author="cuber@gocuber.com"
git branch new_branch_log 5f6b2858708f90d34d4b04b0fa6698dc3475afce
git checkout new_branch_log
查找你要恢复的文件
https://git-scm.com/book/zh/v2/Git-内部原理-维护与数据恢复
config配置
git config --system -l # 查看系统级配置
git config --global -l # 查看用户级配置
git config --local -l # 查看仓库级配置
git config --list # 合并显示 仓库-用户-系统 --list 与 -l 相同
git config --global user.name "cuber" # 设置用户级配置
git config --global user.email "cuber@gocuber.com" # 设置用户级配置
本地Git仓库链接远程Git仓库
git init
git add .
git commit -m ''
git remote add origin https://github.com/aaa/aaa.git
git push -u origin master
git官网中文说明
https://git-scm.com/book/zh/v2/