I consider git on of the most important software ever created. It enabled people to work geographically distributed even without internet connection, with automated backups (every repo is potentially a repository backup). Because of git, software could evolve faster than ever.
To update the local list (cache) of remote branches #
# To show all local and remote branches that (local) Git knows about: git branch -a # And to update it: git remote update origin --prune # Now you can see everything up to date with the origin git branch -a
Git crypt is just awesome. Not perfect, but awesome. It is very useful, despite of its limitations.
Before starting it #
Make sure you have the public gpg key installed:
# List gpg keys gpg --list-keys # List gpg secret keys gpg --list-secret-keys
Importing keybase keys to gpg #
# import keybase keys to gpg keybase pgp export | gpg --import # import private keys to gpg keybase pgp export -s | gpg --allow-secret-key-import --import
Encrypting a git repository folder #
#initiate it git-crypt init #add the public key of the user git-crypt add-gpg-user 5A3700C672440657ACF09DEFB146A056E9BACD36
Configuring the secret files:
.gitattributes file you must do:
# Example secretfile filter=git-crypt diff=git-crypt *.key filter=git-crypt diff=git-crypt secretdir/** filter=git-crypt diff=git-crypt src/main/resources/*.yml filter=git-crypt diff=git-crypt