Bom*_*ley 22 git github pull-request
我们经常使用pull request上的Files Changed选项卡来查看我们在分支上完成的工作,遗憾的是我们开发过程的主要部分是重新生成Flex服务,因此在查看文件时,99%的更改都无关紧要.这使得很容易错过应该审核的重要更改.
我们知道这些重新生成的服务所在的文件夹,如果有帮助,我们可以在一次提交中提交所有重新更改.
有没有人有任何建议我们如何改进这个?理想情况下,我们会从pull request diff中排除一个文件夹.
pro*_*mer 16
Github 现在通过.gitattributes文件支持这一点。
.gitattributes在存储库的根目录中创建一个文件。
使用 linguist-generated 属性来标记或取消标记您希望在存储库的语言统计中被忽略并默认隐藏在差异中的路径。
例如,要将 search/index.json 标记为生成的文件,请将此行添加到.gitattributes:
search/index.json linguist-generated=true
Run Code Online (Sandbox Code Playgroud)
参考:https : //help.github.com/en/github/administering-a-repository/customizing-how-changed-files-appear-on-github
为了排除某个文件夹,我制作了一个棘手的脚本,您可以通过 DevTools 执行该脚本。
const fileElements = document.querySelectorAll("*[data-path*='vendor']")
fileElements.forEach(el => el.parentElement.remove())
Run Code Online (Sandbox Code Playgroud)
%vendor%在我的情况下,这将删除匹配的任何文件差异。
我知道这是一个老问题,但无论如何都想分享我的解决方案。作为 iOS 开发人员,我在更新使用 Carthage 获取的库时也会遇到这个问题。因此,在对拉取请求进行审查之前,我运行以下脚本:
document.querySelectorAll("*[data-path*='Carthage']").forEach( el => {
const item = el.querySelectorAll("input[type=checkbox][name=viewed]:not(:checked)")[0]
if ( typeof item !== "undefined" ) {
setTimeout(function () {
item.click()
}, 1000)
}
})
Run Code Online (Sandbox Code Playgroud)
在 Mac 上的 Safari 的控制台 (DevTools) 中运行它:CMD+ Option+ U。它将找到所有“已查看”未选中的复选框,用于文件Carthage路径中的文件并“单击”它们。此后,选择过滤器以不显示查看的文件。
目前 GitHub 不支持从拉取请求中排除文件或文件夹的方法。
如果我在发送拉取请求时遇到这个问题,并且这给我的开发团队带来了痛苦,我只能想到以下几点:
目标是从差异中排除文件夹和文件,但同时您不希望在整个拉取请求准备好之前合并服务的更改。该解决方案并不理想,但您可以:
ABB从to打开拉取请求A,您只会看到您感兴趣的内容。我不喜欢这个建议的一些事情:
也许有人对此有更好的流程,但我对向上游推送的分发文件也有同样的问题,我通过完全传递它们来处理它。不过我想你的用例比我的要棘手得多。
希望这会有所帮助,或者为其他用户提供一些开始的机会。
| 归档时间: |
|
| 查看次数: |
5600 次 |
| 最近记录: |