X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;ds=sidebyside;f=README.md;h=f23a0684bf66768af7bec5acbc43e8f11a7dd648;hb=66329b9492ea944c441d8be9961cb41214be7c20;hp=a545967f559301b1df105b49e64e6492da89d609;hpb=c32e78944667d543764b5bdbfbc7f58610e9bcf5;p=git-cheat-sheet.git diff --git a/README.md b/README.md index a545967..f23a068 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,9 @@ How to do stuff with git Splitting a repo ---------------- -### Remove history of all but select files in cloned repo +##### Remove history of all but select files in cloned repo ```sh -$ cp -Rp old new +$ git clone old new $ cd new $ git clean -dfx $ git gc --aggressive --prune=now @@ -27,7 +27,7 @@ $ git filter-branch \ $ git gc --aggressive --prune=now ``` -### Remove history of previously-removed (not in current tree) files +##### Remove history of previously-removed (not in current tree) files ```sh $ git log --pretty=format: --name-status \ | awk '$0 != "" {print $2}' \ @@ -52,3 +52,22 @@ git commit --allow-empty -m $INIT_COMMIT_MSG git rebase --onto $TEMP_BRANCH --root $MAIN_BRANCH git branch -d $TEMP_BRANCH ``` + + +Deleting all tags, locally and remotely +--------------------------------------- +```sh +for tag in `git tag`; +do + git tag -d $tag + git push $REMOTE_NAME :refs/tags/$tag +done +``` + + +Get an older version of a file +------------------------------ + +```sh +git cat-file -p $COMMIT_DIGEST:$FILE_PATH +```