Skip to content
golive edited this page Oct 21, 2014 · 13 revisions

Make an existing git branch to track a remote branch

git branch --set-upstream foo upstream/foo

Recuperar un fitxer esborrat

Sabent la ruta del fitxer que volem recuperar, obtenim el commit on es va esborrar el fitxer:

git rev-list -n 1 HEAD -- <file_path>

Recuperem el fitxer

git checkout <deleting_commit>^ -- <file_path>

En una sola comanda, si $file=<file_path>:

git checkout $(git rev-list -n 1 HEAD -- "$file")^ -- "$file"

Esborrar un fitxer permanentment del repositori

git filter-branch --index-filter 'git rm --cached --ignore-unmatch filename' HEAD
git push origin master --force

HEAD es pot substituir per un commit concret o un interval de commits (ex: 7b3072c..HEAD)

Esborrar una carpeta permanentment del repositori

git filter-branch --index-filter 'git rm -rf --cached foldername' HEAD
git push origin master --force

Show git branches by date

for k in `git branch|sed s/^..//`;do echo -e `git log -1 --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" "$k"`\\t"$k";done|sort -r

Show remote info and branches

git remote show origin

Veure els canvis d'un fixter en cada commit

git log -p --no-merges <file-path>
Clone this wiki locally