第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為 golang repo 運行預(yù)提交掛鉤時出錯 [命名文件必須是 .go 文件:./...]

為 golang repo 運行預(yù)提交掛鉤時出錯 [命名文件必須是 .go 文件:./...]

Go
慕村9548890 2022-12-19 21:18:38
這是我的.pre-commit-config.yam l 文件的內(nèi)容,repos:- repo: local  hooks:    - id: static-checks-pramod      name: Static Analysis      description: This hook does static analysis      entry: staticcheck -tests=false ./...      language: golang      types: [text]在本地為所有本地文件運行掛鉤時,我遇到了以下錯誤,pramodchoudhari@Pramods-MacBook-Pro-2 my-repo % pre-commit run --all-filesStatic Analysis..........................................................Failed- hook id: static-checks-pramod- exit code: 1-: named files must be .go files: ./...-: named files must be .go files: ./...-: named files must be .go files: ./...-: named files must be .go files: ./...-: named files must be .go files: ./...-: named files must be .go files: ./...-: named files must be .go files: ./...-: named files must be .go files: ./...但是如果我在本地運行 staticcheck 命令,它工作正常,如下所示,pramodchoudhari@Pramods-MacBook-Pro-2 my-repo % staticcheck -tests=false ./...         pramodchoudhari@Pramods-MacBook-Pro-2 my-repo % 我不確定我在預(yù)提交配置中做錯了什么。PS:我正在使用這個linter 對我的 repo 進行靜態(tài)分析
查看完整描述

2 回答

?
慕標(biāo)5832272

TA貢獻1966條經(jīng)驗 獲得超4個贊

在您.pre-commit-config.yamltypes設(shè)置中text,它會將所有文本(如文件)傳遞給staticcheck,但它只期望go-files。

你可能想要types: [go]。


查看完整回答
反對 回復(fù) 2022-12-19
?
慕哥9229398

TA貢獻1877條經(jīng)驗 獲得超6個贊

您的配置很接近,但有一些可以改進的地方?,F(xiàn)在你正在安裝一個 noopgolang存儲庫,然后同時運行./...(golang 中的所有內(nèi)容)和text存儲庫中的所有文件(可能不是你想要的?。?/p>


首先讓我們解決 noop 存儲庫——language: golang指示pre-commit它應(yīng)該如何安裝掛鉤本身——在這種情況下你沒有告訴它安裝任何東西(repo: local掛鉤通常additional_dependencies用來安裝東西)


假設(shè)您想要預(yù)提交來管理安裝(畢竟這是預(yù)提交要點的一部分——它管理您的安裝,所以您不需要指導(dǎo)您的貢獻者如何安裝所有東西)——對于你會告訴 pre-commit 安裝這樣的東西:


    # ...

    language: golang

    additional_dependencies: [honnef.co/go/tools/cmd/staticcheck@2022.1.2]

    # ...

現(xiàn)在讓我們來處理正在傳遞的文件——上面的@jkittner 正中要害,但我會詳細說明一下。


pre-commit的參數(shù)模式:


您的掛鉤應(yīng)該期望收到該args值,然后是暫存文件列表。


然后從過濾文件類型:


text- 文件是否看起來像文本文件


將它們放在一起,您當(dāng)前的配置就像運行一樣staticcheck -tests=false ./... $(git ls-files)(假設(shè)您只有文本文件,我所知道的過濾掉二進制文件的 shell 方法并不是很好)


您可能想過濾掉 go 文件,并且您可能不想對每個文件進行雙重檢查——試試這個:


    # ...

    entry: staticcheck -tests=false

    types: [go]

    # ...

或者,如果你總是想運行所有的東西(我不推薦,它會一直變慢?。┠憧梢躁P(guān)閉預(yù)提交的文件處理


    # ...

    entry: staticcheck -tests=false ./...

    pass_filenames: false

    always_run: true

    # ...

免責(zé)聲明:我寫了預(yù)提交


查看完整回答
反對 回復(fù) 2022-12-19
  • 2 回答
  • 0 關(guān)注
  • 406 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號