Chris - git - wahn | ||
Riki und Rudi Chris Michi Doris | ||
|
Committete Änerungen die noch nicht gepusht sind los werden (z.b merge der schief gegangen ist)
git reset --hard origin/master # will set your local branch to match the representation of the remote just pulled down.
anzeigen was committed wirdFür eine Übersicht. git diff --stat --cached origin/master Fürs diff:
git diff --cached origin/master
checken was ein git merge <branch> tun würdegit checkout dev-branch git cherry -v git explosion nach einem force pushgit pull ruiniert alle Dateien mit >>> === und <<< git status sagt man ist in einem merge git merge abort (oder so) git pull --rebase Einen Pull-Request für GitHub vorbereitengit config user.email xyz@users.noreply.github.com git commit --signoff git remote add upstream https://github.com/home-assistant/core.git git stash apply XYZ git push -u origin addfix_somethiung_pr Ein Verzeichnis mit History in ein anderes Repo movenSiehe:
git clone <repourl>/repo-1.git git clone <repourl>/repo-2.git cd repo-1 git remote rm origin # delete link to original repository to avoid any accidental remote changes git filter-branch --subdirectory-filter dir-to-move -- --all # dir-to-move is being moved to another repo. This command goes through history and files, removing anything that is not in the folder. The content of this folder will be moved to root of the repo as a result. # This folder has to be moved to another folder in the target repo. So, move everything to another folder. # wieder zurück moven mit history: git filter-branch -f --index-filter \ 'git ls-files -s | sed -e "s/\t\"*/&dir-to-move\//" | GIT_INDEX_FILE=$GIT_INDEX_FILE.new \ git update-index --index-info && mv "$GIT_INDEX_FILE.new" "$GIT_INDEX_FILE"' HEAD # Above command will go through history and rewrite the history by adding dir-to-move/ to each files. As a result, all files will be moved to a subfolder /dir-to-move. Make sure to use gnu-sed as OSX sed doesn't handle some extensions correctly. For eg. \t im ziel repo dann: git clone repo-2 git remote add master ../repo-1/ git pull master master --allow-unrelated-histories git push # push everything to remote
easy oder?
Removing sensitive data from a repositoryDer commit sollte dann verschwinden. Sollten dann "unreferenced" bzw "dangling" Commits überbleiben und nicht verschwinden ist der commit noch in einem Tag oder einem Pull - Request referenziert. Da hilft es dann auch nicht den Branch mit dem PR zu löschen, es muss (Stand 202209) ein Ticket bei GitHub aufgemacht werden. git fsck --lost-found --dangling -v --name-objects 2>&1 | grep <COMMITID> gibt es den Branch? git ls-remote über die github->issues Seite kann man rausfinden welcher PR das ist.
Hints zu git fsck blog.frankel.ch/git-cleanup/ | /* */ |