Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Nächste Überarbeitung | Vorherige Überarbeitung | ||
pr:git-stuff [2016/02/05 23:03] martok angelegt |
pr:git-stuff [2020/03/26 16:18] (aktuell) martok [Development branch in einen neuen für PR interaktiv rekonstruieren] |
||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
GIT_AUTHOR_DATE='Wed Dec 19 15:14:05 2029 -0800' git commit -m 'future!' | GIT_AUTHOR_DATE='Wed Dec 19 15:14:05 2029 -0800' git commit -m 'future!' | ||
GIT_AUTHOR_DATE='2029-12-19 15:14:05 -0800' git commit -m 'future!' | GIT_AUTHOR_DATE='2029-12-19 15:14:05 -0800' git commit -m 'future!' | ||
- | GIT_AUTHOR_DATE='`date -Iseconds -u -R "oldest file"`' git commit -m 'past!' | + | GIT_AUTHOR_DATE="`date -Iseconds -u -r 'oldest file'`" git commit -m 'past!' |
</code> | </code> | ||
Zeile 45: | Zeile 45: | ||
</code> | </code> | ||
+ | ===== Branch verschieben ===== | ||
+ | |||
+ | Beispiel: Feature-Branch vergessen, 2 commits sind schon auf master (aber nicht gepusht) | ||
+ | <code bash> | ||
+ | git update-ref refs/heads/master `git rev-parse master^2` | ||
+ | </code> | ||
+ | |||
+ | ===== Revision in git-svn Import suchen ===== | ||
+ | |||
+ | Repo ist ein git-svn Mirror, wir suchen den Commit in dem eine bestimmte SVN-Revision gelandet ist | ||
+ | <code bash> | ||
+ | git log | grep -B8 -A1 @34724 | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ===== Dateidatum auf das Datum des letzten Commits setzen ===== | ||
+ | |||
+ | <code powershell> | ||
+ | (git ls-files) | % { (Get-Item $_).LastWriteTime=(git log --pretty=format:%cd -n 1 --date=iso $_) } | ||
+ | </code> | ||
+ | |||
+ | ===== Development branch in einen neuen für PR interaktiv rekonstruieren ===== | ||
+ | |||
+ | <code bash>git-pickbranch my-new-pr master develop</code> | ||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | set -e | ||
+ | |||
+ | FB=$1 | ||
+ | START=$2 | ||
+ | TAIL=$3 | ||
+ | # switch to feature branch, make it point to last of set | ||
+ | git checkout -B $FB | ||
+ | git reset --hard $TAIL | ||
+ | # rebuild between first and last as feature branch, branching on start | ||
+ | git rebase -i --onto $START $START $FB | ||
+ | </code> | ||