git init 初始化本地仓库
git add 文件名 将文件提交到仓库的暂存区
git commit -m ” 说明内容” 将暂存区的文件提交到版本库
git status 显示当前仓库状态
git diff 查看修改过的文件(具体在哪些地方修改)
git log 显示历史记录
git log –pretty=oneline 单行显示信息
上个版本HEAD^
上上个版本HEAD^^
网上100个版本HEAD~100
git reset –hard HEAD^ 回到上一个版本
git reset –hard commit id 回到某个版本
commit id可以用git log来查看
git checkout –文件名 丢弃工作区中对该文件的修改
git reset HEAD file 把暂存区的修改撤销掉,重新放入工作区
git rm +文件名 从版本库中删除某个文件
git commit -m “说明文字” 提交确认
git remote add origin +github的地址(建议ssh,可在配对公钥后免密进行操作)
删除远程库链接
git remote remove origin
git push -u origin master
(此时本地仓库不能为空)
更为简单暴力的方法
git push -u origin +master(强制推送更新)
从远程仓库克隆
git clone +github 的地址
克隆的是一个目录,不需要自己创建目录
git remote 查看远程库的信息
git remote -v 获取更详细的信息
git checkout -b dev orgin/dev 创建远程orgin的dev分支到本地
git pull <远程主机名> <远程分支名>:<本地分支名>
取回远程主机某个分支的更新,再与本地的指定分支合并。
创建与合并分支
创建:git branch 分支名
切换:git checkout 分支名
上面两句相当于:git checkout -b +分支名(创建并切换)
git branch可用来查看分支
git merge +分支名 把该分支合并到当前分支
git branch -d 分支名 删除分支
git log –graph 查看分支合并图
标签
git tag <标签名> 打一个新的标签
git tag 查看所有标签
git tag -a 标签名 -m “说明文字” 创建标签
git tag -s 标签名 -m “说明文字” 用私钥签名一个标签
git show <标签名> 查看标签的信息
git tag -d 标签名 删除标签
删除远程标签:1.git tag -d 标签名(先从本地删除)
2.git push origin :refs/tags/标签名
git push origin 标签名 将标签推送到远程
git push origin –tags 一次性推送全部未推送到远程的本地标签
//想详细了解每个命令的用法可以仔细看看
廖雪峰的git教程