使用[git format-patch]生成git补丁

引言:场景是这样的,之前我拥有权限的一个git仓库,后来由于某些原因不再具有管理该git仓库的权限。但是由于在失去权限后,我在本地对该项目进行了一些代码的优化,并且需要更新到远程仓库的master上。思前想后,最后用了git提供的format-patch命令。
实际上git提供了两种简单的patch方案,一是用git diff生成的标准patch,第二种是git format-patch生成的git专用patch。本文使用的是第二种。

Mehr lesen

【Go学习笔记】13、反射 reflect

反射reflection

反射可大大提高程序的灵活性,使得interface{}有更大的发挥余地
反射使用TypeOf和ValueOf函数从接口中获取目标对象信息
反射会将匿名字段作为独立字段(匿名字段本质)
想要利用反射修改对象状态,前提是interface.data 是settable,即pointer-interface
通过反射可以动态调用方法

Mehr lesen

升级到Xcode8.3以后,解决ReactiveCocoa的各种报错

前言:Xcode8.3不再支持swift2.3,开始全面支持swift3

使用了ReactiveCocoa库的项目怎么办?

Mehr lesen

【Go学习笔记】12、接口 interface

接口interface

  • 接口是一个或多个方法签名的集合
  • 只要某个类型拥有该接口的所有方法签名,即算实现该接口,无需显示声明实现了哪个接口,这称为Structural Typing

Mehr lesen

【Go学习笔记】11、方法method

方法method

  • Go中虽没有class,但依旧有method
  • 通过显示说明receiver来实现与某个类型的组合

Mehr lesen

【Go学习笔记】10、结构struct

结构struct

  • Go中的struct与c中的struct非常相似,并且Go没有class
  • 使用typestruct{} 定义结构,名称遵循可见性规则

Mehr lesen

【Go学习笔记】9、函数func

函数func

  • Go函数不支持嵌套、重载和默认参数
  • 但是支持一下特性

    • 无需声明原型、不定长度变参、多返回值、命名返回值参数

Mehr lesen

【Go学习笔记】8、map

map

  • 类似其他语言中的哈希表或者字典,以key-value形式存储数据
  • key必须是支持==或!=比较运算的类型,不可以是函数、map或slice

Mehr lesen

【Go学习笔记】7、切片slice

切片slice

  • 其本身并不是数组,他指向底层的数组
  • 作为变长数组的替代方案,可以关联底层数组的局部或全部

Mehr lesen

【Go学习笔记】6、数组array

数组array

  • 定义数组的格式:var [n] , n >= 0

Mehr lesen