git教程总结

本文是对廖雪峰官方网站 git教程中命令的总结

命令 作用
安装和简单使用git
git config --global user.name xxx 设置用户名字,如果不加名字,则查询
git config --global user.email xxx 设置用户邮箱,如果不加邮箱,则查询
mkdir learngit 创建目录learngit
cd learngit 切换到learngit目录下
pwd 显示当前目录
git init 在当前目录下初始化一个仓库
git add readme.txt 将文件添加到仓库
git commit -m "wrote a readme file" 把文件提交到仓库
时光穿梭机
git status 查看当前仓库状态
git diff readme.txt 查看readme.txt修改详情
版本回退
git log 版本历史记录
git log --pretty=oneline 简化显示的版本历史记录
git reset --hard HEAD^ HEAD表示当前版本,^的个数表示版本后退次数,后退n个版本也可写为HEAD~n
cat readme.txt 查看当前版本下的readme.txt文件
git reset --hard 11ce59bceec5 最后一个参数是版本号,恢复到对应版本,版本号可以只写开始几位数字
git reflog 版本跳转日志
git diff HEAD -- readme.txt 查看工作区readme.txt文件和版本库内最新版本的该文件的区别
撤销修改
git checkout -- readme.txt 将readme.txt文件撤销到最近以此commit或add后的状态
git reset HEAD readme.txt 撤销暂存区readme.txt文件,工作区修改仍然在,这是后再使用上一个命令checkout可以撤销掉工作去该文件的修改
删除文件
git rm test.txt 在工作区删除版本库中存在的文件后,使用该操作确认要删除,然后commit可以从版本库中删除该文件,和git add相对应
添加远程仓库
git remote add origin githubUrl 关联远程仓库origin
git push -u origin master 把本地仓库推送到远程仓库origin的master分支,-u在第一推送时起到关联本地master分支和远程master分支的作用
git push origin master 向远程仓库推送本地最新修改
从远程仓库克隆
git clone git@github.com:jacktown11/getskill.git 复制远程仓库,从而创建本地仓库
创建与合并分支
git branch dev 创建dev分支
git checkout dev 切换到dev分支
git checkout -b dev 创建dev分支并切换到这个分支
git branch 查看所有分支
git merge dev 把dev分支合并到当前分支
git branch -d dev 删除dev分支
分支管理策略
git merge --no-ff -m "some message" dev 将dev分支采用非fast forward模式合并到当前分支,该模式会保留合并历史,该次合并会进行一次新的commit,所以采用-m参数提供提交信息
bug分支
git stash 储存当前分支工作现场
git stash list 显示存储的工作现场列表
git apply stash@{n} 恢复指定的工作现场
git stash drop 删除stash内容(最上一条,栈方式)
git stash pop 恢复工作现场并删除stash内容
feature分支
git branch -D branchName 强制删除分支
多人协作
git remote 查看远程仓库信息
git remote -v 查看远程仓库详细信息
git pull origin master 将远程master分支合并到当前版本库分支
git push origin dev 将本地分支推送到远程dev分支,如果远程没有该分支会创建该分支
git branch --set-upstream dev origin/dev 指定本地dev分支与远程dev分支的链接
git pull 抓取远程提交的新更新
标签创建与管理
git tag 查看所有标签
git tag <name> 给当前分支添加标签名name
git tag <name> <commit id> 给<commit id>版本添加标签名<name>
git tag -a <name> -m <message> 带有信息地指定标签名
git tag -s <name> -m <message> 使用PGP签名标签
git show <tagname> 查看指定标签名的版本
git tag -d <tagname> 删除标签
git push origin <tagname> 将某标签推送到远程
git push origin --tags 将所有标签推送到远程
git push origin :refs/tags/<tagname> 在本地删除标签后,删除远程标签
自定义git
git config --global color.ui true 让bash界面显示颜色
git add -f <filename> 强制添加某个文件(它可能被.ignore文件忽略添加了)
git check-ignore -v <filename> 检查某个文件被忽略是出于.ignore文件中哪条规则
git config --global alias.<short> <longCmd> 全局性地为命令(组合)<longCmd>配置别名<short>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,990评论 25 708
  • —01— 冯小姐坐在房间里,一匹烫金大红丝缎披在身上,滑过白皙的皮肤,起起伏伏,如一条红色的河蜿蜒流淌,由肩及膝,...
    司琢博睿阅读 366评论 7 8
  • 治愈一切坏心情
    幺五阅读 163评论 0 1
  • 那天,我特想找个人说话。 我也在微信上给几个老友发了微信,但没有一个回信息。 他们可能都在忙吧。我想。 于是,我决...
    会疼这思念阅读 291评论 14 5
  • 很多人都没听过黄姚古镇吧,我也是第一次听过黄姚镇位于广西贺州昭平县东北部,素有“梦境家园”之称。全镇方圆3.6平方...
    十三爷阅读 287评论 0 1