從 GUI 介面開始,我終於明白了將所有內容以文字形式傳輸的強大功能,但我還不知道如何使用所有這些功能。
我意識到特定專案的工作流程是這樣的...
# compile repo 1
cd ~/workspace/repo1
make -B
# deploys compiled code into repo2
make deploy
# commit repo 1
cd ~/workspace/repo1
git add .
git commit -m "changes"
git push origin master
# commit repo 2
cd ~/workspace/repo2
git add .
git commit -m "changes"
git push origin master
我的問題不是如何實現這一點,而是什麼是正確的工具?閱讀周圍的內容似乎我需要 Bash 腳本,但我想從專家那裡了解。
答案1
透過將所有內容輸入到一個地方,您已經有了一個很好的開始。
將所有內容複製到一個文字檔案(例如,,workflow.sh
但名稱並不重要),然後將其放入在文件的第一行:
#!/bin/sh
您現在已經有了一個 shell 腳本。使其可執行:
chmod +x workflow.sh
現在您可以像命令一樣運行它:
./workflow.sh
只需呼叫工作流程,它就會按順序執行每個命令。
您現在是初學者係統程式設計師。你只能從那裡上去。
更新
指定變化無需每次更改時都編輯腳本:
git commit -m "changes"
閱讀:
git commit -m "$1"
然後你可以透過變化作為命令列參數:
./workflow "Describe changes made"
另一個有用的工具是別名和PATH
.您可以建立一個特殊目錄(例如~/bin
)並將所有腳本放在那裡,將此目錄新增到您的PATH
變數中,並且您不需要每次啟動腳本時都鍵入腳本的完整路徑。如果使用別名,您需要為每個腳本建立別名,但有時別名會更方便,因為您可以在其中指定不同的運行參數。
答案2
您可以使用 python utils 組織程式碼:https://wiki.python.org/moin/FlowBasedProgramming
另一個上面沒有提到但仍然很有前途的軟體包是 Snakemake。