一、打补丁 git format-patch & git apply
最近在工作中遇到打补丁的需求,一来觉得直接传文件有些low(而且我尝试了一下,差点把项目代码毁了) ,二来也是想学习一下,so,format-patch对于我来讲是个新命令,将处理流程与技巧卸备份在这里。
1、从A分支git checkout -b B,新建一个新分支
2、找到打补丁的人相对A分支,开始写补丁的commitid,并git reset --hard 将head指向这一分支,如此一来保证补丁的应用场景是有一样的
3、打补丁的人执行 git format-patch -s commitid,这里的commitid是补丁内容的第一次提交,生成很多*.patch的文件,传给应用的人
4、应用的人需要接收这些补丁,然后执行git apply *.patch
5、如果第4步成功则结束,如果报一些冲突的问题可以先使用git apply --reject *.patch,这条命令可以让你先把没有冲突的补丁应用,并将有冲突的补丁生成*.rej的文件,然后你可以选择忽视这些改动,或者手动应用到自己的项目中
6、结束
二、删除untracked files
因为第一步很low的尝试,我见到了很多untracked文件,这些文件可以通过git clean -fd 删除(-f 是force ,-d表示目录),然后git status查看状态,已经删除完美!