This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
git [2014/01/23 15:20] – admin | git [2021/01/19 22:58] (current) – [Git Changelog] admin | ||
---|---|---|---|
Line 2: | Line 2: | ||
- | <note important> | + | :!: Befehle kommen von hier: http:// |
===== Befehle (lokal, kein Internet benötigt ) ===== | ===== Befehle (lokal, kein Internet benötigt ) ===== | ||
Line 35: | Line 35: | ||
==== Master-Branch hoch schieben ==== | ==== Master-Branch hoch schieben ==== | ||
- | Schiebt die lokale | + | Schiebt die lokale |
git push origin master | git push origin master | ||
Line 42: | Line 42: | ||
git clone http:// | git clone http:// | ||
- | | + | |
+ | |||
+ | ====== Git Submodules (sub repository) ====== | ||
+ | |||
+ | ===== Create a Submodule ===== | ||
+ | |||
+ | To link one repository into another in git you can use a thing called submodules: | ||
+ | |||
+ | git submodule add http:// | ||
+ | |||
+ | Example: | ||
+ | |||
+ | cd / | ||
+ | git submodule add https:// | ||
+ | git add . | ||
+ | git commit -m "Add submodules ..." | ||
+ | git push origin master | ||
+ | |||
+ | ===== Clone a Repo containing submodules/ ===== | ||
+ | |||
+ | Submodules need to be initialized and downloaded | ||
+ | |||
+ | cd / | ||
+ | git submodule init | ||
+ | git submodule update | ||
+ | |||
+ | |||
+ | ===== Update a submodules repo ===== | ||
+ | |||
+ | When updating a submodule its required to tell the parent repository to use the latest downloaded version. | ||
+ | |||
+ | cd / | ||
+ | git pull origin master | ||
+ | cd / | ||
+ | git commit -am " | ||
+ | git push origin | ||
+ | |||
+ | ===== Pull ===== | ||
+ | |||
+ | git pull origin | ||
+ | git submodule update | ||
+ | |||
+ | ====== Change git Author ====== | ||
+ | |||
+ | <code bash git.sh> | ||
+ | #!/bin/sh | ||
+ | |||
+ | git filter-branch -f --env-filter ' | ||
+ | |||
+ | OLD_EMAIL=" | ||
+ | CORRECT_NAME=" | ||
+ | CORRECT_EMAIL=" | ||
+ | |||
+ | if [ " | ||
+ | then | ||
+ | export GIT_COMMITTER_NAME=" | ||
+ | export GIT_COMMITTER_EMAIL=" | ||
+ | fi | ||
+ | if [ " | ||
+ | then | ||
+ | export GIT_AUTHOR_NAME=" | ||
+ | export GIT_AUTHOR_EMAIL=" | ||
+ | fi | ||
+ | ' --tag-name-filter cat -- --branches --tags | ||
+ | </ | ||
+ | |||
+ | ====== Git Changelog ====== | ||
+ | |||
+ | Generate a simple changelog of all commits between latest 2 tags. | ||
+ | |||
+ | <code bash> | ||
+ | # | ||
+ | |||
+ | TAGS=($(git tag --sort=-version: | ||
+ | git log --pretty=format:" | ||
+ | </ | ||
+ |