[英]Git submodule raises import error once used in python project
我在python項目中使用了git-submodule。
子模塊項目如下所示:
-submodule_project
- __init__.py
- debug_util.py
- parsing_util
- __init__.py
- parse.py
- consts.py
parse.py
導入debug_util.py
。 由於子模塊是一個獨立的項目,因此此結構可以正常工作。
我的項目是這樣構建的:
-project
- __init__.py
- file1.py
- some_dir
- __init__.py
- main.py
因此,一旦我將子模塊用作項目中的git子模塊, parse.py
引發ImportError
。 一旦運行了導入debug_util.py
的行,就會發生這種情況。 只是澄清main.py
: main.py
導入parse.py
,后者導入debug_util.py
您能解釋一下我做錯了什么嗎?有哪些可用的解決方案可以解決此問題?
這是我的.gitmodules
文件:
[submodule "submodule_project"]
path = submodule_project
url = ../submodule_project.git
預先感謝大家!
Git子模塊非常煩人(至少是我上次玩它們的時候)。 我建議不要使用子模塊,而應該僅使用python自己的依賴項管理。 因此,您的submodule_project
將具有其自己的唯一名稱,並打包在myparser-1.2.1
類的發行版中,然后您的主項目將依賴於setup.py
那個軟件包。
git子模塊的問題(來自git文檔):
git submodule init
初始化您的本地配置文件,以及git submodule update
以從該項目中獲取所有數據並檢出超級項目中列出的適當提交 submodule update --init
來重新填充它。 git子模塊的問題(我自己的觀察):
master
,但是它不能正常工作,現在您已經獲得了不在上游的合並提交。 update
和init
一級深層子模塊已經很煩人了,但是如果您的子模塊之一也使用子模塊怎么辦? 您也沒有提到在頂級項目中如何以及在何處設置子模塊。 如果您從頂級項目中粘貼.gitmodules
文件,則可能會更有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.