我還記得以前在還在接案公司的時候,那時候程式沒有很好,(當然現在也沒有到多好...),以前要更新程式碼到 server,都還是用 FIleZIlla,當然我不是瞧不起 FIleZilla...,而是檔案散佈很多不同資料夾,或只需要更新特定檔案時,找來找去實在很麻煩。
幾年後出現了 Grunt 這樣子的前端自動化工具之後,減少了不需要安裝 FileZilla 的麻煩,當然 Gulp 也有類似的工具。(我個人比較習慣 Grunt,所以 Gulp 就不多做介紹了..)
好處是因為 Grunt 已經幫我處理掉很多前端的事情了,像是 CSS, JavaScript 檔案壓縮,語法檢查等等,那麼如果連 FTP 都可以透過 Grunt 做掉,也是蠻方便的,現在我用的套件是這個: zonak/grunt-ftp-deploy。
npm 套件的安裝清一色幾乎都是一樣的流程。必要條件是你必須要安裝:
*Node.js
*npm
而因為我們用的是 Grunt 的工具,因此也要裝 Grunt:
*Grunt
必要的項目的裝完了之後,在自己的資料夾下安裝 Grunt ftp deploy
npm install grunt-ftp-deploy --save-dev
同樣的,你也必須有一個 Gruntfile.js,官網有非常詳細的 example,你可以從那裡 copy,接著看 github 上的說明或範例,直接拷貝。
目錄底下的 package.json 起碼會有這些東西: (如果你不知道什麼是 package.json,那請你在你網站的根目錄底下下 npm i 指令,一直按 enter,就會建立一個預設的 package.json)
*"grunt": "^0.4.5",
*"grunt-ftp-deploy": "^0.1.10"
接著這是我的 Gruntfile.js,這只是個 sample,給你參考用,其實跟官網的差不多...:
因為 FTP 連線需要帳號密碼,你要在目錄下也建立一個 .ftpconfig (Auth 的 .ftpconfig) 填入你的帳號密碼,然後在 Gruntfile.js 說明是用哪一組 Key 去登入 (Auth 的 authKey)。
然後我在 registerTask 指定當 Grunt 接收到 push 指令的時候,就幫我執行 ftp-deploy 的行為,把 src 目錄下的東西拷貝到 dest 目錄下的地方。
其實有些時候 FTP 也蠻管用的,只是我現在很少用到就是了...
非不得已的情況下,比方說 server 不允許 ssh 之類的,那就可以考慮看看用 Grunt 嘍!
幾年後出現了 Grunt 這樣子的前端自動化工具之後,減少了不需要安裝 FileZilla 的麻煩,當然 Gulp 也有類似的工具。(我個人比較習慣 Grunt,所以 Gulp 就不多做介紹了..)
好處是因為 Grunt 已經幫我處理掉很多前端的事情了,像是 CSS, JavaScript 檔案壓縮,語法檢查等等,那麼如果連 FTP 都可以透過 Grunt 做掉,也是蠻方便的,現在我用的套件是這個: zonak/grunt-ftp-deploy。
npm 套件的安裝清一色幾乎都是一樣的流程。必要條件是你必須要安裝:
*Node.js
*npm
而因為我們用的是 Grunt 的工具,因此也要裝 Grunt:
*Grunt
必要的項目的裝完了之後,在自己的資料夾下安裝 Grunt ftp deploy
npm install grunt-ftp-deploy --save-dev
同樣的,你也必須有一個 Gruntfile.js,官網有非常詳細的 example,你可以從那裡 copy,接著看 github 上的說明或範例,直接拷貝。
目錄底下的 package.json 起碼會有這些東西: (如果你不知道什麼是 package.json,那請你在你網站的根目錄底下下 npm i 指令,一直按 enter,就會建立一個預設的 package.json)
*"grunt": "^0.4.5",
*"grunt-ftp-deploy": "^0.1.10"
接著這是我的 Gruntfile.js,這只是個 sample,給你參考用,其實跟官網的差不多...:
因為 FTP 連線需要帳號密碼,你要在目錄下也建立一個 .ftpconfig (Auth 的 .ftpconfig) 填入你的帳號密碼,然後在 Gruntfile.js 說明是用哪一組 Key 去登入 (Auth 的 authKey)。
然後我在 registerTask 指定當 Grunt 接收到 push 指令的時候,就幫我執行 ftp-deploy 的行為,把 src 目錄下的東西拷貝到 dest 目錄下的地方。
其實有些時候 FTP 也蠻管用的,只是我現在很少用到就是了...
非不得已的情況下,比方說 server 不允許 ssh 之類的,那就可以考慮看看用 Grunt 嘍!
沒有留言:
張貼留言
若你看的文章,時間太久遠的問題就別問了,因為我應該也忘了... XD