Ga naar inhoud

Tips & tricks

Lokale branches opruimen

Als je alle branches lokaal wilt verwijderen die al zijn gemerged, gebruik je het volgende commando:

Terminal window
git branch --merged develop | grep -v '^[ *]*develop$' | xargs git branch -d

Hoe doe je een Git Rebase?

Met een rebase herschrijf je de geschiedenis door je feature branch te plakken achter de laatste status van de branch waarin je wil mergen.

rebase uitleg

Terminal window
git fetch
git checkout feature-branch
git rebase origin/develop
git push --force

Het kan zijn dat je merge conflicten krijgt. Deze moet je oplossen. Nadat de merge conflicten zijn opgelost moet je niet commiten, maar alleen de files toevoegen (git add ...). Vervolgens ga je verder met git rebase --continue. (Dit staat uitgelegd in de terminal).


Verander bestanden van uppercase naar lowercase

Hier heb je 2 opties:

  1. Soms als bestanden al gecommit zijn met hoofdletters is het lastig om deze te renamen omdat git dat niet direct als een change ziet.
  • Gebruik op macOS de volgende one-liner om bestanden te renamen in de huidige map:

Terminal window
for f in *.md; do git mv "$f" "`echo $f | tr "[:upper:]" "[:lower:]"`"; done

In dit geval alleen de *.md bestanden

Source: Stackoverflow

  1. Je kunt ook folders/bestanden hernoemen met git mv.
Terminal window
git mv OldFileName temp && git mv temp NewFileName

Hernoem master naar main

Zie ook Git Config.

Terminal window
git branch -m master main
git status
git checkout main

Update remote ook

Terminal window
git push -u origin main
git push origin --delete master

Bron


Filemode aanpassen op Mac OS

Als er veel files zijn aangepast in git zonder dat je wijzigingen ziet is waarschijnlijk de filemode per ongeluk aangepast.

Bijvoorbeeld:

Terminal window
diff --git a/site/web/app/languages/nl_NL-4a38fe1c0c45989e44682ba6109d9f46.json b/site/web/app/languages/nl_NL-4a38fe1c0c45989e44682ba6109d9f46.json
old mode 100644
new mode 100755

Om dat op te lossen kan je dit commando uitvoeren voor 100644 -> 100755

git diff --summary | grep --color 'mode change 100644 => 100755' | cut -d' ' -f7- | xargs chmod -x

En dit commando voor 100755 -> 100644

git diff --summary | grep --color 'mode change 100755 => 100644' | cut -d' ' -f7- | xargs chmod +x

Bron: https://stackoverflow.com/a/2083563


Cannot connect to remote host

Error Reinitialized existing Git repository in /builds/**/wordpress-website/.git/

fatal: unable to access ’https://codepot.nl/lemone/wordpress-website.git/’: Could not resolve host: codepot.nl

Terminal window
$ ssh lemone@runner1.codepot.nl
$ sudo su
$ systemctl restart docker