Git 使用记录
记录一下平时使用Git的记录
为什么使用Git
程序开发的第一步,就是做版本管理。频繁提交,可以便于环境恢复和Bug查找。分支开发,也能便于合作与多设备协同。配置Review规范,你还可以知道你的合作者在干什么,有效避免了因为开发者习惯能力差异导致的项目丑陋。配合CI的编译预检查,还能提高代码的稳健性。总之版本管理十分重要。
版本管理工具有很多,游戏开发由于拥有大量会频繁改动的二进制资源,于是常常使用SVN等工具,比如P4V。而引擎开发一般以代码为主,用Git管理,其中二进制文件(比如第三方库的超大号DLL)使用Git LFS管理
Cherry pick
常用于获取他人其他分支的某些改动,相较于Rebase,对于本地代码的破坏性更小,会保留commit信息
Cherry pick,摘樱桃,功能是将某个commit复制到当前分支
# Cherry pick 哈希值为8e8b...的commit |
设置别名
有时很多很常用的命令你感觉太长了,于是可以使用别名
# 设置commit别名c,git c将等同于git commit |
补丁
常用于获取他人其他分支的某些改动,但并不会保存commit信息,你需要手动add、commit
diff
差异,用于生成补丁文件(patch),补丁文件本身是个纯文本文件
# 比较branch1和2的最新提交间的差异,将差异保存在mypatch.patch文件中 |
apply
应用,用于应用补丁文件(patch),若出现冲突,会生成拒绝(reject)文件,你可以手动处理掉这些reject文件
git apply xxx.ptach --reject |
清理
手动进行垃圾回收,以释放本地存储空间
git prune |
网络443
有的时候我们挂了梯子仍然连不上github服务器,报错
fatal: unable to access ‘https://github.com/Reuben-Sun/ToolEngine.git/’: Failed to connect to github.com port 443 after 21070 ms: Couldn’t connect to server
此时我们可以先查看自己梯子的端口号,然后找到.gitconfig
文件,添加代理设置(我这里以端口号为7890为例)
[user] |