預提交鉤子(使用 pre-commit.com)可以將檔案添加到提交中嗎?
我的用例:我確實在 jupyter 筆記本中作業。在提交時,我想生成并 git-add提交中任何ipynb檔案的 html 版本。
例如一個提交鉤子,如:
- repo: local
hooks:
- id: nb-as-html
name: nb-as-html
stages: [commit]
language: system
verbose: false
pass_filenames: false
always_run: true
entry: find devtools \( -name \*.ipynb -not -name \*checkpoint.ipynb \) -type f -exec jupyter nbconvert --to HTML {} \;
并以某種方式將檔案添加到提交中。
我該怎么做呢?還是預提交不是為此而設計的?
uj5u.com熱心網友回復:
可以在掛鉤中添加檔案,pre-commit但不建議這樣做。Git 開發人員通常會解決此作業流程中出現的問題,但他們并不樂意這樣做,也不鼓勵這樣做。此外,用戶不會期望您這樣做,并且可能不會對您這樣做感到高興。由于克隆存盤庫時不會克隆鉤子(因為這將允許執行任意代碼),因此您也不能假設其他貢獻者會運行它們。
此外,您應該避免將生成的檔案完全提交到存盤庫。當合并或變基發生時,這往往會使存盤庫膨脹并導致沖突。您最好在 CI 中生成此檔案并將其上傳到其他地方。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/480923.html
