一、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. 1205索引使用explain

    -- 转自博客http://blog.sina.com.cn/s/blog_75a2f94f0101ddhb.html01type类型type按照从最佳类型到最坏类型进行排序,该字段和ref字段相结合 ...

  2. Spring在非web应用中关闭IoC容器 (registerShutdownHook)

    在基于web的ApplicationContext实现中,已有相应的实现来处理关闭web应用时恰当地关闭Spring IoC容器.但,如果你正在一个非web应用的环境下使用Spring的IoC容器,如 ...

  3. js中的json对象和字符串之间的转化

    字符串转对象(strJSON代表json字符串)   var obj = eval(strJSON);   var obj = strJSON.parseJSON();   var obj = JSO ...

  4. ACM提交结果简介

    如果你看到红色的"Accepted",那么,恭喜你,你已经成功的解决了该问题! 如果你收到的是如下的信息,则还需要继续检查你的程序: Wrong Answer (WA) : 输出结 ...

  5. sublime 插件推荐: Nettuts+ Fetch

    Nettuts+ Fetch github地址:Nettuts-Fetch 在sublime中直接用 ctrl+shift+P -> pci -> Nettuts-Fetch 即可下载 这 ...

  6. input type="datetime-local" 时placeholder不显示

    一个坑,input的type="datetime-local" 时,电脑上会显示提示,如图 <input type="datetime-local" na ...

  7. 【POJ-1390】Blocks 区间DP

    Blocks Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 5252   Accepted: 2165 Descriptio ...

  8. wpf ListBox删除

    绑定一个GUID对象 重绑定的数组中移除改对象,重新绑定.

  9. Javascript字节转换

    //文件大小转换 function bytesToSize(bytes) { if (bytes === 0) return '0 B'; var k = 1024; sizes = ['B', 'K ...

  10. springMVC的bean注入方式

    POJO是多例模式,并不是单例模式. servlet是单例的,同一个实例可以同时有多个用户访问 用单例,是因为没必要每个请求都新建一个对象,这样子既浪费CPU又浪费内存:用多例,是为了防止并发问题:单 ...