公司在做一个项目,要求用nodejs被动从git上拉取项目,就是git上的代码有更新(同事有提交代码),就给nodejs发消息,nodejs监听到消息后,从git上拉取,更新本地文件,其实就是代替手动拉取代码,获取git是用的nodegit插件,希望大家给些建议,谢谢!
走同样的路,发现不同的人生
這種事以前真沒幹過,不過感覺你們這個想法貌似沒什麼大用呢,畫蛇添足的趕腳。例如你正在寫程式碼,同事提交了,你這邊被動的更新程式碼,如果出現衝突了,你就要停下來處理衝突,思路就斷了。還有現在很多專案都進行分支管理,即使同事提交了,也不一定在你的分支上,你更新了也沒有用呀。 對於這個想法,可以用類似手機推送的方式。當服務端偵測到程式碼更新,就對客戶端推送,客戶端有腳本接收推送並發送請求更新程式碼。我能想到就這些了,不過這個想法感覺真心沒什麼用呀,手動更新程式碼的時間應該不會比你們開發這個功能的時間長。
git 鉤子
Webhook
git提供了Webhook. 在專案的Setting裡可以找到.
簡單的說, 就是專案發生變化, 會根據你的設定, 向指定URL發送POST請求. 這樣, 根據POST請求進行相應的處理即可, 具體的請看手冊
PS:很多自動化部署的工具都是用這個的, 例如Travis CI Strider-CD, 如果不自己搭建, 可以用這些, 集成度很高, 而且可以自動部署. 請注意License.
這種事以前真沒幹過,不過感覺你們這個想法貌似沒什麼大用呢,畫蛇添足的趕腳。例如你正在寫程式碼,同事提交了,你這邊被動的更新程式碼,如果出現衝突了,你就要停下來處理衝突,思路就斷了。還有現在很多專案都進行分支管理,即使同事提交了,也不一定在你的分支上,你更新了也沒有用呀。
對於這個想法,可以用類似手機推送的方式。當服務端偵測到程式碼更新,就對客戶端推送,客戶端有腳本接收推送並發送請求更新程式碼。我能想到就這些了,不過這個想法感覺真心沒什麼用呀,手動更新程式碼的時間應該不會比你們開發這個功能的時間長。
git 鉤子
Webhook
git提供了Webhook. 在專案的Setting裡可以找到.
簡單的說, 就是專案發生變化, 會根據你的設定, 向指定URL發送POST請求. 這樣, 根據POST請求進行相應的處理即可, 具體的請看手冊
PS:
很多自動化部署的工具都是用這個的, 例如Travis CI Strider-CD, 如果不自己搭建, 可以用這些, 集成度很高, 而且可以自動部署. 請注意License.