我已经应用了一些静态代码分析 - 并将所有Java包级别字段转换为protected.这大多是正确的,因为我忘了明确设置访问修饰符,并且受保护通常是我在那些情况下所追求的.
不幸的是,我应用的重构是IntelliJ弱化访问修饰符,它也改变了很多public - > protected,on constructors等等.
所以,一旦我有一个带有这样的语句的差异:
-int myField;
+protected int myField;
Run Code Online (Sandbox Code Playgroud)
和
-public MyConstructor()
+protected MyConstructor()
Run Code Online (Sandbox Code Playgroud)
有没有办法编写一个在提交期间运行的脚本,并且只允许上面的第一个例子,但没有第二个?我可以搞清楚脚本,我只是不确定如何运行它 - 它是一个预提交钩子吗?
如果它是一个预提交钩子,你怎么检查这样一个脚本中的diff并接受/拒绝它基于greped它的某些字符串?
是的,你可以使用涂抹/滤镜来做到这一点
有几种方法可以做到这一点。
git hooks 是一个在 git 生命周期的不同阶段运行的脚本。
在正确的挂钩文件中检查您需要的文件/内容,并用它执行您需要的操作。
该挂钩将在您的文件上运行并检查语法。
基本上,smudge 相当于每当您签出任何内容时都运行此代码
,而 clean 相当于每当您签入任何内容时都运行此代码。
图片来自此网址: https ://git-scm.com/book/en/v2/Customizing-Git-Git-Attributes
归档时间: |
|
查看次数: |
52 次 |
最近记录: |