[英]How to block specific pushes with github webhooks?
我試圖保護我的github repo免受某些特定推送(例如推送沖突標記,如<<<<<
)。
起初,我嘗試編寫一個pre-commit git hook來阻止那些特定的提交。 然后實現github存儲庫不接受預提交掛鈎,我必須在客戶端為每個貢獻者安裝它們。
這不是一個簡潔的解決方案,因為有人可能忘記在克隆后安裝鈎子。 也可以覆蓋預提交掛鈎。
然后我了解了github webhooks 。 他們可以在推送存儲庫期間通過有效負載通知。
是否有可能通過webhook檢查和阻止推送?
Github不支持放置服務器端鈎子,因此您無法在遠程存儲庫上運行驗證。 但是在技術上可以作為一個hack,你可以在其中設置另一個中間登台存儲庫,其中包含你想要的所有這些鈎子,這是github之前的一種可寫鏡像。 人們將他們的更改推送到這個中間存儲庫,通過鈎子驗證它們並將相同的更改推送到github存儲庫。 恕我直言我會建議不要添加這樣的存儲庫,除非你的開發人員經常打破這樣的東西。
另一方面,如果你繼續這樣的實現,使用update鈎子而不是pre-commit,因為它為每個被推送的ref運行
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.