GitHub workflow分支显示全量文件而非仅变更内容相关问题咨询
问题解答
1. 该展示情况完全正常,不是合并后的视图
Git分支的本质是基于父分支的完整文件快照,而非仅存储改动内容。你从master分支新建分支时,新分支会完整继承当前master的全部50个文件,你仅新增1个文件的操作,相当于在继承的基础上新增内容,因此该分支的完整文件列表就是原50个文件+1个新文件,GitHub切换分支时展示的是该分支本身的全量文件内容,并非和master合并后的视图。
你存在的认知误区是认为分支仅存储差异内容,实际上Git的差异是两个分支/提交对比时动态计算出来的,而非分支本身仅保存改动部分。如果想要仅查看该分支相对master的改动内容,可以执行命令git diff master..你的分支名,或者在GitHub对应仓库页点击「Compare」选择两个分支对比,就只会显示你新增/修改的内容。
2. 仅新增文件、不移除未改动文件是完全正确的操作流程
绝对不要主动移除其他未改动文件,如果你在当前分支删除了那50个未改动的文件,后续把该分支合并回master时,会触发这些文件的删除操作,直接导致master分支的原有文件丢失,引发严重问题。
额外操作提示
如果日常开发中想要快速确认当前分支的改动范围,执行git diff master即可快速列出相对master分支的所有改动,无需关注全量文件列表。
内容的提问来源于stack exchange,提问作者mickeysox
相关产品推荐
相关产品推荐

