简短版:
有没有办法将更改 checkin git 存储库,但“stash ”一般消费的更改集元数据(保留 blame 中的先前更改集等)?
长版:
我最近继承了一个代码库,从外观上看,它有一个初始团队领导,他鼓励他的每个开发人员——作为一种精神成长的练习——去探索世界并找到一种格式化风格他们觉得最有禅意的是……真正找到自己的各种艺术风格,将其应用于代码格式化,每天画出代码杰作,过着艺术家的生活。
出现了一些模式,例如随机选择语句之间换行符的数量、包装每个方法参数——声明和调用……它一直在继续,但是基本上,我想在 IDE 中设置我的格式首选项,松开几个小时,清理混淆的地方,然后提交。我从团队那里得到了一些(有效的)反对意见,关于在注释等中显示的容易看到的“最后一个触摸它”插槽中丢失所有历史记录。
有什么方法可以做出不影响这些变化的改变吗?我也在想可能有一个分支技巧可以做一些事情,比如分支,在分支中格式化,将另一个分支重新整合到那个分支中,以某种方式使我的“ secret 提交”升级到最新版本,这将保留旧版本
有人有什么建议吗?我非常愿意为这一一次性招待黑客。 :)
最佳答案
短:没有
Long:要向一致的风格迁移,鼓励您的开发人员同事修改代码,使其在处理代码时符合您的通用风格。这样,对于未更改的代码,责任归因保持一致。对于被修改的代码,责任归因会转移到最后接触它的开发人员身上。如果愿意,您可以在更精细的基础上执行此操作,例如清理每个函数的格式。
关于git - 如何有不可见的 git meta 提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9713987/