Affected files: .obsidian/community-plugins.json .obsidian/plugins/oz-image-plugin/main.js .obsidian/plugins/oz-image-plugin/manifest.json .obsidian/plugins/oz-image-plugin/styles.css .obsidian/workspace 02. PARA/03. Resources(資源)/git/submodule.md attachments/20220608152709_git_submodule.png
27 lines
867 B
Markdown
27 lines
867 B
Markdown
## 建立 Git Submodule
|
||
```
|
||
git submodule add <repository> [<local_path>]
|
||
```
|
||
新增之後,用 git status 會發現多了兩個東西需要 commit:
|
||
![[20220608152709_git_submodule.png|450]]
|
||
|
||
第一個檔案 .gitmodules,裡面紀錄 submodule 的對應關係,內容大概像這樣:
|
||
```
|
||
[submodule "RobotRunQA"]
|
||
path = RobotRunQA
|
||
url = git@github.com-logi:JuiwenHsu/RobotRunQA.git
|
||
```
|
||
|
||
接下來剩3個步驟:
|
||
1. 提交 `.gitmodule`:`git add .gitmodule ; git push origin master`
|
||
2. 跟git說我們有新增一個submodule:`git submodule init`
|
||
3. 把submodule pull下來:`git submodule update`
|
||
|
||
## Clone repository and submodule
|
||
當clone一個有submodule的repo的時候,我們還需要 `git submodule init` 跟 `git submodule update` ,例如:
|
||
```
|
||
git clone https://xxx/xxx.git
|
||
cd xxx
|
||
git submodule init
|
||
git submodule update
|
||
``` |