Git命令总结,以备不时之需

235 阅读3分钟
git config --global user.name "用户名"  
//配置全局用户名
git config --global user.email "邮箱"  
//配置全局邮箱
git init 
//初始化仓库
git clone https://github.com/test.git 
//克隆项目到本地
git add . 
//把工作区的文件全部提交到暂存区
git add ./text 
//把工作区的text文件提交到暂存区
git add -f <file> 
//强制提交已忽略的文件
git commit -m "描述" 
//把暂存区的所有文件提交到仓库区
git commit -a -m '描述' 
//跳过暂存区存入(之前add提交过的,直接提交)
git commit --amend 
//将暂存区的文件提交,修订提交
git remote add origin https://github.com/test.git 
//把本地仓库和远程仓库链接起来
git push -u origin master 
//把仓库的主分支master提交到远程仓库
git push -u origin <其他分支> 
//把其他分支提交到远程仓库
git status 
//查看当前仓库的状态
git diff 
//查看文件修改的具体内容
git log 
//显示从近到远的提交历史
git log --oneline 
//以简洁的方式显示提交历史
git log --oneline --decorate --graph --all 
//查看所有的分支命令
git reflog
//显示所有的日志信息
git rm A.txt  
//删除版本库里的A.txt
git mv 原文件名 新文件名  
//修改文件名
git config --global alias.logbranch "log --oneline --decorate --graph -all"  
//配置别名配置切换分支,使用:git logbranch
git branch 
//查看所有分支列表
git branch bug  
//创建bug(bug为分支的名字,可随意)分支
git branch -d bug  
//删除分支,you可能会删除失败。原因:可能分支没有被合并
git branch -D bug  
//强制删除分支,包括没有执行合并的分支
git checkout bug  
//切换分支,切换到bug分支
git merge bug  
//合并分支,合并分支前切换到主分支,然后再执行合并操作
git log --graph 
//查看分支合并图
git merge --no-ff bug 
//合并分支的时候禁用Fast forward模式,会丢失分支历史信息
git checkout --<file> 
//撤销命令,用版本库的文件替换掉工作区的文件,ctrl+z
git reset --hard 版本号 回溯版本 
//版本号在提交commit的时候与master跟随在一起
git stash 
//当有其他任务时,把当前工作存储起来
git stash list 
//查看存储起来的列表
git stash apply 
//恢复却不删除stash的内容
git stash drop 
//删除stash内容
git stash push -u -m xxx
//将当前未提交的内容存储
git stash pop 
//恢复的同时把stash内容也删了
git stash clear 
//在查看存储后 执行此命令 清空stash栈
git remote 
//查看远程仓库的信息,会显示origin,远程仓库默认名称为origin
git remote -v 
//显示更详细的信息
git pull 
//把最新的提交从远程仓库抓取下来,在本地合并
git pull base --rebase
//从主仓库变基拉取代码
git rebase 
//把分叉的提交历史整理一下
git tag 
//查看所有的标签,可以知道历史版本
git tag v1.0 
//打标签,默认为HEAD
git tag <tagName> <版本号> 
//把版本号打上标签,版本号就是commit的时候,旁边的一串字母
git show <tagName> 
//查看标签信息
git tag -a <tagName> -m "<说明>" 
//创建带说明的标签,-a指定标签名,-m指定说明
git tag -d <tagName> 
//删除标签
git push origin <tagName> 
//推送某个标签到远程仓库
git push origin --force
向个人仓库推送
git push origin --tags 
//一次性推送全部尚未推送到远程仓库的标签
git push origin :refs/tags/<tagName> 
//删除远程标签
git check-ignore -v <file> 
//检查git为什么忽略该文件