一、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. [LeetCode] Closest Binary Search Tree Value II 最近的二分搜索树的值之二

    Given a non-empty binary search tree and a target value, find k values in the BST that are closest t ...

  2. [LeetCode] Surrounded Regions 包围区域

    Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is captured ...

  3. AppBoxPro - 细粒度通用权限管理框架(可控制表格行内按钮)源码提供下载

    特别声明: 提供的源代码已经包含了 AppBoxPro 的全部源代码,用 VS2012 打开项目后,直接 Ctrl+F5 可以运行起来(默认使用VS自带的LocalDB数据库). FineUIPro是 ...

  4. 装X代码

    装X代码 http://hackcode.ishoulu.com/scp/ http://hackcode.ishoulu.com/umbrella/ http://hackcode.ishoulu. ...

  5. mvn-打jar运行包(含环境变量配置)

    前沿条件 maven下载:http://maven.apache.org/download.cgi 配置环境变量 MAVEN_HOME= D:\Softwares\apache-maven-3.2.2 ...

  6. 基于redis 实现分布式锁的方案

    在电商项目中,经常有秒杀这样的活动促销,在并发访问下,很容易出现上述问题.如果在库存操作上,加锁就可以避免库存卖超的问题.分布式锁使分布式系统之间同步访问共享资源的一种方式 基于redis实现分布式锁 ...

  7. Java NIO浅析

    NIO(Non-blocking I/O,在Java领域,也称为New I/O),是一种同步非阻塞的I/O模型,也是I/O多路复用的基础,已经被越来越多地应用到大型应用服务器,成为解决高并发与大量连接 ...

  8. Spring(Model)

    一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架 分层架构,一站式(full-stack),高内聚低耦合,允许客户端JavaScript远程调用服务端JAVA类方法 应用中的对象不依赖于S ...

  9. php实现文件上传与下载(中)

    出现不想让用户看见的信息,可以使用错误抑制符号@:当然能echo的东西都是可以赋值给一个变量的: 定义用户上传文件类型,将其放在数组变量allowExt中,用if(!in_array(第一个参数为获取 ...

  10. js键盘事件和焦点事件

    键盘事件onkeydown //当键盘按下的时候触发onkeyup //但键盘抬起的时候触发event.keyCode //数字类型 键盘按键的键值功能键 ctrlkey shiftkey altke ...