亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

文件不是帶有“-s”的“gofmt”:為什么會發生這種情況以及如何解決它?

文件不是帶有“-s”的“gofmt”:為什么會發生這種情況以及如何解決它?

Go
當年話下 2022-09-26 19:54:31
我們使用一個 linter(對于 Golang),每次我們在存儲庫上打開或更新拉取請求時,它都會通過 Github 操作工作流運行。它最近開始返回以下錯誤:File is not `gofmt`-ed with `-s` (gofmt)在此另一個PR中發生的事情之后,文件。(編輯:添加鏈接以評估并最終重現錯誤)pkg/api/api/go證據:我想了解此錯誤的來源是什么,以及如何解決它?
查看完整描述

2 回答

?
holdtom

TA貢獻1805條經驗 獲得超10個贊

錯誤的來源

文件未根據Go規則正確格式化時,似乎可以返回此錯誤。

例如:如果您不小心使用了制表符縮進而不是空格。

編輯:黑綠的答案提供了有關錯誤來源的更準確的詳細信息


如何解決

您可以使用以下 Go 命令:

gofmt -s -w <path_to_file>.go

...,然后提交代碼。

請注意,在我的情況下:gofmt -w pkg/api/api.go足以解決問題(沒有-s標志,我覺得這很奇怪,因為錯誤特別要求-s)。

源 1 + 源 2


查看完整回答
反對 回復 2022-09-26
?
有只小跳蛙

TA貢獻1824條經驗 獲得超8個贊

中的標志與格式無關。這是關于簡化代碼:-sgofmt

嘗試簡化代碼(在應用重寫規則(如果有)之后)。

您看到的警告來自棉絨絨。由于您聲稱已通過運行 修復了錯誤,因此提示“with ”的存在可能是由于以下錯誤:https://github.com/golangci/golangci-lint/issues/513gofmt -w-s

鏈接的問題已于 2019 年修復,隨 v1.17.0 發布。您可能需要檢查管道是否正在使用舊版本。

假設您的文件僅僅因為未格式化而觸發了警告,則解決了由于覆蓋文件而導致的問題:pkg/api/api.gogofmt -w-w

如果文件的格式與 gofmt 的格式不同,請使用 gofmt 的版本覆蓋它。


查看完整回答
反對 回復 2022-09-26
  • 2 回答
  • 0 關注
  • 223 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號