以前一直用svn,轉入git沒多久,菜鳥一隻 過去一直是在服務器的server目錄下git init一個倉庫,然後本地客戶端通過SSH連接clone這個倉庫。每次push之後,然後再通過服務器hooks執行git reset --hard。以同步。 我覺得這個方法肯定是有問題,請問能否更簡單一些
伊谢尔伦2017-04-21 11:19:31
如果你伺服器上的程式碼倉庫只是當作代碼倉庫用,也就是跟SVN的倉庫一樣的話,那麼應該用:
git init --bare
來初始化。這樣建立的倉庫不包含工作目錄,也就不需要用鉤子去做reset。
但是如果你的伺服器同時也是生產環境,每次push上去的程式碼希望能夠自動部署的話,那不可避免地需要在伺服器上clone一份工作目錄,並且每次push後使用鉤子去讓工作目錄自動同步。