遊戲內 Git 整合¶
helpme 的貢獻 (2022)
一個在遊戲中整合 git 精簡版本的模組,讓開發人員可以檢視其 git 狀態、更改分支以及提取本地 mygame 儲存庫和 Evennia 核心的更新程式碼。成功拉取或簽出後,git 指令將重新載入遊戲:可能需要手動重新啟動才能套用某些會影響持久scripts 等的變更。
設定 contrib 後,整合遠端變更就像在遊戲中輸入以下內容一樣簡單:
git pull
您想要使用的儲存庫(無論是本機 mygame 儲存庫、僅 Evennia core 還是兩者)都必須是 git 目錄,指令才能發揮作用。如果您只想使用它來獲取上游 Evennia 更改,則僅 Evennia 儲存庫需要是 git 儲存庫。 從這裡開始版本控制。
依賴關係¶
該套件需要依賴項“gitpython”,這是一個用於 與 git 儲存庫互動。安裝,安裝Evennia最簡單 額外要求:
pip install evennia[extra]
如果您安裝了git,您也可以這樣做
cd到 Evennia 儲存庫的根目錄。pip install --upgrade -e.[extra]
安裝¶
該實用程式新增了一系列簡單的“git”指令。將模組匯入到您的指令中並將其新增至您的指令集中以使其可用。
具體來說,在mygame/commands/default_cmdsets.py中:
...
from evennia.contrib.utils.git_integration import GitCmdSet # <---
class CharacterCmdset(default_cmds.Character_CmdSet):
...
def at_cmdset_creation(self):
...
self.add(GitCmdSet) # <---
然後 reload 使 git 指令可用。
用法¶
只有當您希望使用的目錄是 git 目錄時,此實用程式才有效。如果不是,系統將提示您在終端機中使用以下指令將目錄啟動為 git 儲存庫:
git init
git remote add origin 'link to your repository'
預設情況下,git 指令僅適用於具有開發人員及更高許可權的人員。您可以透過覆蓋指令並將其鎖定從「cmd:pperm(Developer)」設定為您選擇的 lock 來變更此設定。
支援的指令有:
git status:您的 git 儲存庫的概述、哪些檔案已在本機變更以及您正在進行的提交。
gitbranch:有哪些分支可供您檢視。
git checkout ‘branch’:簽出一個分支。
git pull:從目前分支中提取最新程式碼。
所有這些指令也可與「evennia」一起使用,以提供與 Evennia 目錄相關的相同功能。所以:
git evennia 狀態
git evennia 分支
git evennia 簽出“分支”
git evennia pull:拉取最新的Evennia程式碼。
使用的設定¶
該實用程式使用settings.py 中的現有GAME_DIR 和EVENNIA_DIR 設定。如果您有標準目錄設定,則不需要更改它們,它們應該存在而無需您進行任何設定。
此檔案頁面是從evennia\contrib\utils\git_integration\README.md產生的。對此的更改
檔案將被覆蓋,因此請編輯該檔案而不是此檔案。