git init : 将当前目录变成Git可以管理的仓库
git add :告诉Git,把文件添加到仓库
git commit -m "" :把文件提交到仓库
git status :查看仓库当前的状态
git diff filename :查看filename文件修改了哪些内容
git diff HEAD -- filename :查看HEAD指向的版本库里面的filename和工作区的最新版本
git log :记录下每次提交commit的时间节点
git log --pretty=oneline :一行显示每次提交commit的时间节点(完整的commit的id 和 提交时候的备注)
git log --graph --pretty=oneline --abbrev-commit :记录下每次提交commit的时间节点,一行显示(只显示部分commit的id 和 提交时候的备注)
git reset --hard HEAD^ :首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
git reset HEAD filename :把修改后add到暂存区这一步撤销掉,重新放回工作区
git reflog :记录每一次命令
git remote add origin git@github.com:Humphry150/learngit.git :关联本地仓库到远程仓库,添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的
git push -u origin master :把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。
git checkout -- filename :把filename文件在工作区的修改全部撤销
git checkout dev :切换到dev分支
git checkout -b dev :创建dev分支,并切换到dev分支
git branch dev :创建dev分支
git branch -d dev :删除dev分支
git branch -D dev :强行删除dev分支(不管该分支是否有修改)
git checkout dev :切换到dev分支
git branch :查看当前分支情况
git merge dev :将dev分支合并到当前分支上
git stash :将当前工作现场“储藏”起来,等以后恢复现场后继续工作
git stash list :查看保存的工作现场
git stash apply :恢复工作现场,但stash内容并不擅长
git stash drop :擅长stash内容
git stash pop :恢复的同时,擅长stash内容
git remote :查看远程仓库的信息
git remote -v :查看远程仓库的信息(详细显示)
git tag :查看所有标签
git tag tagname :给当前的commit处添加一个标签
git tag v0.9 6224937 :给commit id为6224937的commit添加一个标签
git tag -a v0.1 -m "version 0.1 released" 3628164 :创建带有说明的标签,-a指定标签名,-m指定说明文字
git tag -s v0.2 -m "signed version 0.2 released" fec145a :通过-s用私钥标签名一个标签
git show v0.9 :查看标签信息
git tag -d v0.1 :删除标签v0.1
git push origin v1.0 :推送v1.0标签到远程
git push origin --tags :一次性推送全部尚未推送到远程的本地标签
git config --global color.ui true
git config --global alias.st status :设置以后st就表示status
git config --global alias.unstage 'reset HEAD' :设置以后unstage就表示 reset HEAD
git last :查看最近一次的提交