一、git 常用操作

1.1

  1. // 该方法会显示某次提交的所有更改
  2. git log --pretty=oneline 文件名
  3. git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e

1.2

  1. git log filename //可以看到fileName相关的commit记录
  2. git log -p filename //可以显示每次提交的diff
  3. git show c5e69804bbd9725b5dece57f8cbece4a96b9f80b filename // 只看某次提交中的某个文件变化,可以直接加上fileName

1.3 重命名分支

  1. git branch -m <oldname> <newname>

1.4 保存修改,应用修改

  1. git stash
  2. git stash apply

1.5 –squash 方式merge

  1. git merge --squash 某分支

二、 创建分支并和远程绑定

  1. git branch abc // create branch
  2. git push origin abc // push branch
  3. git branch --set-upstream-to=origin/abc // 和远程分支关联
  4. git checkout -b 本地分支 远程分支

三、 取消本次commit / 远程回滚

  1. git reset HEAD^ // 取消本次提交
  2. git reset --soft <commitId> // 本地回滚工作空间回滚到某id。保留修改
  3. git reset --hard <commitId> // 本地回滚工作空间到某id,不保留修改。
  4. git revert <commitId> // 如果远程想回滚,先在本地revert,再提交。

四、 用git 调用资源管理器打开当前目录

  1. $ explorer.exe .

五、git同步更新远程分支(去缓存)

  1. $ git fetch -p

六、 删除远程分支和tag 、 重命名

  1. // delete remote branch
  2. $ git push origin --delete <branchName>
  3. // 推送一个空分支到远程分支,其实就相当于删除远程分支:
  4. $ git push origin :<branchName>
  5. // delete remote tag
  6. $ git push origin --delete tag <tagname>
  7. // 推送一个空tag到远程tag
  8. git tag -d <tagname>
  9. git push origin :refs/tags/<tagname>
  10. // 获取远程tag
  11. git fetch origin tag <tagname>
  12. // 把本地tag推送到远程
  13. git push --tags
  14. # 创建轻量标签
  15. $ git tag v0.1.2-light
  16. # 创建附注标签
  17. $ git tag -a v0.1.2 -m “0.1.2版本”
  18. 与切换分支命令相同,用git checkout [tagname]
  19. 查看标签信息
  20. 用git show命令可以查看标签的版本信息:
  21. $ git show v0.1.2
  22. 误打或需要修改标签时,需要先将标签删除,再打新标签。
  23. $ git tag -d v0.1.2 # 删除标签
  24. $ git push origin v0.1.2 # 将v0.1.2标签提交到git服务器
  25. $ git push origin --tags # 将本地所有标签一次性提交到git服务器

七、 git自定义指令

  1. // 将 checkout 简化成 co
  2. git config --global alias.co "checkout"
  3. // 将显示分支颜色指令简化成 lg
  4. git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'"

git 实用技巧的更多相关文章

  1. Git实用技巧

    1.关于版本控制系统 (1)本地版本控制系统 (2)集中化的版本控制系统 (3)分布式版本控制系统 2.Git的三种状态 对于任何一个文件,在 Git 内都只有三种状态: 已提交(committed) ...

  2. Git 实用技巧:git stash

    我们经常会遇到这样的情况: 正在dev分支开发新功能,做到一半时有人过来反馈一个bug,让马上解决,但是新功能做到了一半你又不想提交,这时就可以使用git stash命令先把当前进度保存起来.然后切换 ...

  3. Buildroot构建指南--快速上手与实用技巧

    Buildroot官方全英文使用手册的链接是https://buildroot.org/downloads/manual/manual.html,需要知道每一个细节的朋友,可以仔细查阅,这篇文章只是我 ...

  4. Hbuilder实用技巧(转)

    Hbuilder实用技巧 原创 2016年05月19日 10:25:42 标签: hbuilder 操作 16551 1. Q:怎么实现代码追踪? A:在编辑代码时经常会出现需要跳转到引用文件或者变量 ...

  5. Buildroot构建指南--快速上手与实用技巧【转】

    本文转载自:http://blog.csdn.net/zhou_chenz/article/details/52335634 Buildroot官方全英文使用手册的链接是https://buildro ...

  6. Notepad++ 实用技巧

    Notepad++是一款开源的文本编辑器,功能强大.很适合用于编辑.注释代码.它支持绝大部分主流的编程语言. 本文主要列举了本人在实际使用中遇到的一些技巧. 快捷键 自定义快捷键 首先,需要知道的是: ...

  7. javascript实用技巧、javascript高级技巧

    字号+作者:H5之家 来源:H5之家 2016-10-31 11:00 我要评论( ) 三零网提供网络编程. JavaScript 的技术文章javascript实用技巧.javascript高级技巧 ...

  8. iOS开发实用技巧—Objective-C中的各种遍历(迭代)方式

    iOS开发实用技巧—Objective-C中的各种遍历(迭代)方式 说明: 1)该文简短介绍在iOS开发中遍历字典.数组和集合的几种常见方式. 2)该文对应的代码可以在下面的地址获得:https:// ...

  9. iOS开发实用技巧—在手机浏览器头部弹出app应用下载提示

    iOS开发实用技巧—在手机浏览器头部弹出app应用下载提示 本文介绍其简单使用: 第一步:在本地建立一个访问的服务端.  打开本地终端,在本地新建一个文件夹,在该文件夹中存放测试的html页面.   ...

随机推荐

  1. Dapper学习笔记(一)

    https://github.com/StackExchange/dapper-dot-net Dapper是对IDbConnection的扩展,需要使用Dapper提供的扩展只需要把SqlMappe ...

  2. 5G关键技术评述

    业内重大事件: 张  平:无线通信领域专家,北京邮电大学教授,博士生导师,现任北京邮电大学无线新技术研究所(WTI)所长.泛网无线通信教育部重点实验室主任以及中德软件研究所副所长.张平教授是国家宽带无 ...

  3. hihoCoder太阁最新面经算法竞赛15

    hihoCoder太阁最新面经算法竞赛15 Link: http://hihocoder.com/contest/hihointerview24 题目1 : Boarding Passes 时间限制: ...

  4. hibernate缓存机制(转)

    原文出处:http://www.cnblogs.com/wean/archive/2012/05/16/2502724.html 一.why(为什么要用Hibernate缓存?) Hibernate是 ...

  5. Atomikos实现多数据源的事物管理

    之前试过使用Spring动态切换数据库,通过继承AbstractRoutingDataSource重写determineCurrentLookupKey()方法,来决定使用那个数据库.在开启事务之前, ...

  6. EasyUI 解决 datagrid 中 NumberBox 限制小数位数后不能输入小数点问题

    初始化界面,发现编辑datagrid,不能输入小数点. var arrColumnsCNT = [[ { title: '毛重', field: 'GrossWeight', halign: 'cen ...

  7. druid连接池获取不到连接的一种情况

    数据源一开始配置: jdbc.initialSize=1jdbc.minIdle=1jdbc.maxActive=5 程序运行一段时间后,执行查询抛如下异常: exception=org.mybati ...

  8. AnjularJS系列5 —— scopes、module、controller

    第五篇, scopes.module.controller 这一篇,感觉,在前面几篇就使用过的属性,但,总觉得没有理解透彻,有待完善!~ 1.scopes A.定义:$scope是一个把view(一个 ...

  9. MAC上安装 HLA(High Level Assembly)

    1.安装HLA 最新版的hla汇编器可在这里下载,支持MacOs,Linux,Windows平台 2.安装步骤 将下载好的hla程序包放在Mac根目录下 最重要的一步是设置好环境变量,打开Mac根目录 ...

  10. MVC中使用[ValidateAntiForgeryToken]防止CSRF 注入攻击

    CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF.通俗的理 ...