自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何自動化你的開發(fā)環(huán)境

開發(fā) 架構 自動化
如果你是一個程序員,無論前端還是后端,無論業(yè)余還是專業(yè),你可能都會遇到這樣一個問題:你需要一邊寫代碼,一邊運行程序,方便查看代碼產(chǎn)生的效果。

[[428797]]

如果你是一個程序員,無論前端還是后端,無論業(yè)余還是專業(yè),你可能都會遇到這樣一個問題:你需要一邊寫代碼,一邊運行程序,方便查看代碼產(chǎn)生的效果。

舉個例子吧,當你寫了一部分 Django views,你會開啟一個終端運行 Django

  1. cd myapp/rear_end/ 
  2. source env/bin/activate 
  3. python manage.py runserver 

然后你有寫了幾個前端頁面,你要啟動 npm

  1. cd myapp/front_end/ 
  2. npm run dev 

現(xiàn)在突然報了個錯,提升你 xxx 包沒有安裝,于是你又開啟了一個終端,運行了 pip

  1. source env/bin/activate 
  2. pip install xxx 

也許你還需要在開啟一個終端,來管理 npm 的包。

然后你就在這些個終端里面切換來切換去,不知道怎么搞得,電腦卡了下,你一怒之下用快捷鍵退出了好幾個應用程序,其中就包括你開啟的幾個終端。

然后你的程序崩潰了。

你也崩潰了,編程太艱難了,現(xiàn)在你不得不手動一個一個啟動這些終端,然后在敲入相應的指令。即使你的電腦不卡,也許會關機,再開機,仍然需要做這些步驟。

現(xiàn)在是時候?qū)ふ腋玫霓k法了。

也許你知道 tmux (tmux教程[1]) 可以對一個終端進行分屏,每個屏里面是一個獨立的 terminal session,可以分別執(zhí)行不同的命令,讓我們在同一個窗口看到不同任務的執(zhí)行情況,比如像這樣:

這樣雖然解決了不同終端間來回切換的問題,但還有一個問題沒解決,就是如果不小心關閉了這個終端,或者電腦崩潰了,如何快速恢復運行好的狀態(tài)?

這就需要 tmuxinator 了,先看下效果圖:

tmuxinator 是一個處理 tmux 配置的完美工具,自動化開發(fā)環(huán)境從未如此簡單?,F(xiàn)在讓我們看下如何使用。

1、先安裝 tmuxinator。

當然了,安裝前確保你已經(jīng)安裝了 tmux,可以看這個tmux教程[2]

  1. gem install tmuxinator 

注:

gem 是 Ruby 的一個包管理器,安裝完 Ruby,你就有了 gem 工具,正如安裝完 Python,你就有了 pip 工具。

2、在項目目錄生成一個配置文件

假如項目叫 dream,然后在終端執(zhí)行

  1. tmuxinator new dream  

會生成文件 ~/.config/tmuxinator/dream.yml

3、修改這個配置文件,加入自己執(zhí)行的命令,如下所示:

  1. name: dream 
  2. root: ~/dev/mtg-dreamland 
  3.  
  4. windows: 
  5.   - main: 
  6.       layout: even-horizontal 
  7.       panes: 
  8.         - client: 
  9.             - cd client 
  10.             - git status 
  11.             - ls 
  12.         - server: 
  13.             - cd server 
  14.             - git status 
  15.             - ls 
  16.   - build: 
  17.       layout: even-horizontal 
  18.       panes: 
  19.         - client: 
  20.             - cd client 
  21.             - npm start 
  22.         - server: 
  23.             - cd server 
  24.             - nodemon server.js 

這個配置文件定義了 2 個窗口:“main”和“build”。在每一個中,有 2 個窗格“客戶端”和“服務器”。然后只需定義我想在啟動時在每個窗格中運行的命令,我們就完成了!

然后執(zhí)行 tmuxinator start dream,就可以看到所有的命令都會按照你的編排進行執(zhí)行,實現(xiàn)了開發(fā)環(huán)境的自動化,如下:

最后

這只是 tmuxinator 的簡單應用,如果要想了解它更多的能力,可以去官方 GitHub[3] 看下。

參考資料

[1]tmux教程: https://www.ruanyifeng.com/blog/2019/10/tmux.html

[2]tmux教程: https://www.ruanyifeng.com/blog/2019/10/tmux.html

[3]官方 GitHub: https://github.com/tmuxinator/tmuxinator#windows

本文轉(zhuǎn)載自微信公眾號「Python七號」,可以通過以下二維碼關注。轉(zhuǎn)載本文請聯(lián)系Python七號公眾號。

 

責任編輯:武曉燕 來源: Python七號
點贊
收藏

51CTO技術棧公眾號