《Mysql必知必会》读书笔记 jar包名中自动添加git commit id PyCharm教学视频学习笔记 《SQL基础教程》简要总结 《设计师要懂心理学》读书笔记 MySQL与MariaDB学习笔记 WDT (Folly) 安装指南 -- CentOS 7 [solved]Page build failed(Jekyll) 数据包过滤及分析实例 tshark tcpdump Scala Tour 学习总结 “Docker容器和容器云”读书笔记(1) “Docker Practice”读书笔记 “图解基础设施设计模式”小结 “图解服务器端网络架构”小结 Python网络安全编程 数据包解析笔记 华为挑战赛(1) DDoS攻击防御与云服务 基于网络回溯分析技术的异常行为分析 “Linux程序设计”小结(进程间通信) C语言编程规范(华为软件精英挑战赛) 2017阿里在线编程题--单源最短路径问题 2017年阿里在线编程题-- 数串分组 Uinx/Linux上的帮助查询命令 你懂C,所以C++不在话下 一篇特别长的总结(C专家编程) 程序员面试金典--笔记(精华篇) C陷阱与缺陷--笔记 半小时搭建电子商务网站--opencart linux网络知识和工具(持续更新) 网卡参数查询及设置工具ethtool 高性能流量生成工具trafgen(DDoS模拟) Linux流量控制工具TC 流量控制工具TC详细说明 tcpdump过滤数据包,结果不对? Lecture 网络攻击与防御技术笔记 gotgit-git权威指南 高效使用MacOS所要知道的 shell内置字符串处理 配置ntp(知其所以然) 360黑客攻防技术分享会--记录 中毒U盘恢复--快捷键病毒 Tor--anonymity network介绍(PPT) IBM bluemix 再读《Linux Shell脚本攻略》 linux shell 学习摘记(9) linux shell 学习摘记(8) linux shell 学习摘记(7) linux shell 学习摘记(6) linux shell 学习摘记(5) linux shell 学习摘记(4) linux shell 学习摘记(3) linux shell 学习摘记(2) linux shell 学习摘记(1) firefox vim 插件 vimperator A Byte of Vim 笔记 windows注册表小知识 安全测试工具篇(开源&商业) 安全及性能测试工具(网站收集) 性能测试工具 屡试不爽的“3个”iPad使用技巧 Shell Shortcuts(和Tab键一样实用) vim--自动添加jekyll post信息头 vim 自动给文件添加头部信息 GitHub Tips (很实用,值得收藏) Linux路由、防火墙、NAT命令

GitHub Tips (很实用,值得收藏)

2016年09月11日

针对GitHub 和 Git,各列举了15个小技巧!精简实用

GitHub Tips

  1. 这里可以下载各种造型的GitHub吉祥物(总有一款会是你的菜
  2. 这里可以查看GitHub托管的总仓库数(总数很大很大
  3. 这里可以查看当前备受瞩目的开源软件(追逐潮流,走在前沿,拥抱最新的技术
  4. GitHub上的开源代码,大多数使用的是MIT许可协议,基本要求要了解(要了解

    被授权人权利
    被授权人有权利使用、复制、修改、合并、出版发行、散布、再授权和/或贩售软件及软件的副本,及授予被供应人同等权利,惟服从以下义务。
    被授权人义务
    在软件和软件的所有副本中都必须包含以上版权声明和本许可声明。
    其他重要特性
    此许可协议并非属copyleft的自由软件许可协议条款,允许在自由及开放源代码软件或非自由软件(proprietary software)所使用。
    MIT的内容可依照程序著作权者的需求更改内容。此亦为MIT与BSD(The BSD license, 3-clause BSD license)本质上不同处。
    MIT许可协议可与其他许可协议并存。
    另外,MIT条款也是自由软件基金会(FSF)所认可的自由软件许可协议条款,与GPL兼容

  5. GitHub上Issue、Wiki、评论等都可以用MarkDown语法表示(是都可以!
  6. 这里有最全的各类.gitignore模版(直接download吧
  7. GitHub页面支持使用键盘快捷键,shift + / 键可打开一览表(不知道试试吧
  8. 在某仓库页面上按下键盘的t键再输入文件名,可快速查询需要的目录或文件名,不用手动找(很实用,节约时间
  9. 通过手写URL快速查看代码之间的差异,可按分支前几天制定日期的方式查询(高手的习惯

    查看分支差别:https://github.com/rails/rails/compare/4-0-stable...3-2-stable
    查看几天前差别:https://github.com/rails/rails/compare/master@{2.day.ago}...master
    查看特定日期差别:https://github.com/rails/rails/compare/master@%7B2016-09-08%7D...master

  10. 通过在Pull Request的URL后添加.diff.patch,可直接获取对应格式的Pull Request文件

    若Pull Request的URL为https://XXXX/仓库名/pull/28,则获取diff格式文件,只需在其末尾添加.diff,如https://XXXX/仓库名/pull/28.diff,patch格式也相同,末尾添加.patch

  11. Close Issue时,可在提交中以一定的格式描述提交信息,而对应的Issue就会自动Close。不用在网页中手动操作。(方便

    下列任意格式都可以——fix #2, fixes #2, fixed #2, close #2, closes #2, closed #2, resolve #2, resolves #2, resolved #2

  12. Issue和Pull Request的编号通用,可以直接在Issue中给出源代码,其就可以变成Pull Request。(hub命令
  13. emoji表情自动补全功能,评论中输入:后便会启动,emoji速查表在这里
  14. Wiki也可以通过Git进行管理,Clone其URL即可
  15. 建立个人私有仓库,按套餐类型,最低只要7美元/月

Git Tips

  1. 学习Git的好网站 LearnGitBranching右下角地球标志可切换成中文版的
  2. 这里是最新的Pro Git中文官方学习资料(免费,且有pdf,epub,mobi,html版本
  3. git config --global 全局配置文件.gitconfig存放的目录为~windows下也是
  4. 这样设置后可以优美简洁的显示git log

    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",之后查看log只需键入git lg,是git lg

  5. git XXX --help可在浏览器中查看最详细最全的git命令帮助信息,git XXX -h可在命令行中显示简要的帮助信息
  6. 若想以后通过确认日志工具方便的查看提交记录,git commit后,编辑提交信息时要注意格式

    第一行:用一行文字描述提交的更改内容
    第二行:空行
    第三行:技术更改的原因和详细内容

  7. git commit -a只能统一提交修改过的文件,但新建的文件还是需要git add XXX后再提交。
  8. git checkout -可以方便的切换至上一个分支
  9. git reflog可查看当前仓库执行过的操作(即使错误的执行了git命令,也可通过reflog恢复原来状态,而git log只能查看以当前状态为终点的历史操作

    只要不进行Git的GC(Carbage Collection,垃圾回收)就可以通过reflog日志随意调取最近的历史状态

  10. git reset --hard XXXXX回溯历史时,哈希值只要输入4位以上就行
  11. git commit --amend 修改提交信息(万一提交信息里面有拼写错误呢
  12. git rebase -i HEAD~2将最近两次提交的记录合并为一次完美记录,git rebase可将不良记录(如拼写错误)从历史中抹去(很实用,很实用
  13. git branch -a 同时显示本地仓库和远程仓库的分支信息
  14. git log -p FILENAME显示文件改动信息
  15. git commit之前先git diff HEAD查看本次提交和上次提交的区别(好习惯

词汇

Groupware:群件
CRM:Customer Relationship Management,顾客关系管理
IRC:Internet Relay Chat,网上实时聊天
GFM:GitHub Flavored Markdown
TiDD:Ticket-driven Development
BTS: Bug Tracking System,典型的还有Redmine, Trac, Bugzilla

说明

  1. 本文章主要是总结了《GitHub入门与实践》1-5章的内容,同时还包括其他部分网站的信息。在此一并表示感谢!
  2. 有其他值得收藏(一般人不知道的)GitHub Tips欢迎指出……

知识共享许可协议
SWF's Hacking Dreamonephone 创作,采用 知识共享 署名-非商业性使用 4.0 国际 许可协议进行许可。
© 2011-2018. All rights reserved by onephone. Powerd by Jekyll.