Git: Difference between revisions
No edit summary |
Adds example submodule work |
||
| Line 105: | Line 105: | ||
http://nvie.com/posts/a-successful-git-branching-model/ | http://nvie.com/posts/a-successful-git-branching-model/ | ||
== Submodules == | |||
Using multiple repositories to compose your project. See https://git-scm.com/book/en/v2/Git-Tools-Submodules | |||
<source lang="bash"> | |||
git init myproject | |||
cd myproject | |||
git submodule add git@github.com:example.com/htdocs.git website | |||
git submodule add https://gerrit.wikimedia.org/r/p/mediawiki/core.git mediawiki | |||
git submodule add https://gitlab.com/Aranad/tools.git odtools | |||
cd mediawiki/ | |||
git checkout REL1_31 | |||
cd ../ | |||
git commit -m 'initial commit' | |||
git diff --submodule | |||
git config --global diff.submodule log | |||
git diff | |||
git config -f .gitmodules submodule.mediawiki.branch REL1_31 | |||
git submodule update --remote | |||
git status | |||
git commit -am 'tracking REL1_31 in the mediawiki submodule' | |||
git config status.submodulesummary 1 | |||
git log -p --submodule | |||
cd mediawiki/ | |||
git submodule update --remote --merge | |||
git config alias.sdiff '!'"git diff && git submodule foreach 'git diff'" | |||
git config alias.spush 'push --recurse-submodules=on-demand' | |||
git config alias.supdate 'submodule update --remote --merge' | |||
</source> | |||
== Tools == | == Tools == | ||