今天看了廖雪峰的git教程,做了一下学习笔记,整理了一下,以备不时之需
Git版本控制
- git status——查看暂存区状态
- git diff ——查看文件改动
- git log——查看提交日志
- –pretty=online——日志只输出
- git reset HEAD^——回退到上一个版本
- HEAD^^——上上个版本
- HEAD~100——回到一百个版本前
- git reflog——查看命令日志
- git diff HEAD – readme.txt——可以查看工作区和版本库里面最新版本的区别
- git checkout – file——工作区的修改全部删除
- git reset HEAD file——暂存区里面的修改撤销,重新放回工作区
- git rm——版本库内删除文件,之后用commit
- git checkout – test.txt——从版本库恢复文件
远程仓库
- git remote add origin xxx——关联远程仓库,origin是默认远程仓库名称
- git push -u origin master——把当前分支master推送到远程,由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令
分支管理
- git checkout -b dev——等于git branch dev和git checkout dev命令的和
- git branch——查看所有分支,当前分支前面加*
- git merge ——合并指定分支(dev)到当前分支
- git branch -d ——删除分支
- git log –graph——分支合并图
- git merge –no-ff ——不采用默认的fast forward方式merge,而创建一个新的merge以后的节点
- git stash——工作现场储存
- git stash list——所有储存的列表
- git stash apply——恢复现场
- git stash drop——删除stash
- get stash pop——恢复现场并且删除
- 多人协作运用远程仓库
- git remote——查看远程仓库信息
- git remote -v——显示详细信息
- git push origin dev——推送其它分支
- git checkout -b dev origin/dev——创建远程的dev分支到本地
标签
- git tag v1.0——给当前分支打标签,-s用私钥签名(PGP)打标签,
- git tag——查看所有标签
- git show ——查看标签信息
- git push origin ——标签默认保存在本地,若要推送需要单独push
- git tag -d v0.9——删除标签
gitignore
- 每行对应一条语句
- *.[acd]——表示所有后缀名为.a .c .d的三种文件
配置别名
- git config –global alias.ci ‘commit -m’——设置ci命令代表commit -m
- git config –global alias.lg “log –color –graph –pretty=format:’%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ –abbrev-commit”——设置五颜六色的日志输出
- 以上的–global代表对当前用户,否则只对当前git有用