For educational reasons I've decided to create my own CA. Here is what I learned.
Lets get some context first.
| DROP TABLE IF EXISTS foo; | |
| CREATE TEMPORARY TABLE foo (x FLOAT); | |
| INSERT INTO foo VALUES (1); | |
| INSERT INTO foo VALUES (2); | |
| INSERT INTO foo VALUES (3); | |
| INSERT INTO foo VALUES (4); | |
| INSERT INTO foo VALUES (100); | |
| SELECT avg(x), tmean(x, 2.0), tmean(x, 1.5) FROM foo; |
| -- Create a group | |
| CREATE ROLE readaccess; | |
| -- Grant access to existing tables | |
| GRANT USAGE ON SCHEMA public TO readaccess; | |
| GRANT SELECT ON ALL TABLES IN SCHEMA public TO readaccess; | |
| -- Grant access to future tables | |
| ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO readaccess; |
| +------------------------------+-------------------------+----------------------------------------------------------------+ | |
| | Category | Strong Team | Weak Team | | |
| +------------------------------+-------------------------+----------------------------------------------------------------+ | |
| | Division of labor | Efficient | Inefficient | | |
| | Scheduling | Tight, precise | Lacking organization | | |
| | Handling of arising problems | Effective | Ineffective, throws team into mayhem | | |
| | Work rate | Productive | Mediocre | | |
| | Scope changes | Adept at making changes | Changes require a lot of synchronization from all team members | | |
| | Supervision | |
Here are the simple steps needed to create a deployment from your lokal GIT repository to a server based on this in-depth tutorial.
You are developing in a working-copy on your local machine, lets say on the master branch. Most of the time, people would push code to a remote server like github.com or gitlab.com and pull or export it to a production server. Or you use a service like my Deepl.io to act upon a Web-Hook that's triggered that service.
| Daniels test1 [master]$ git var -l | grep -e "^alias" | |
| alias.lg=log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit | |
| alias.co=checkout | |
| alias.st=status | |
| alias.ci=commit | |
| alias.df=!f() { git diff -C --color $1 | diff-so-fancy | less --tabs=1,5 -R; }; f |
| # Useful command to delete remote branches that are merged to currently checked out HEAD | |
| git branch -a --merged | grep BAK | grep -v <CURRENT_BRANCH_NAMEHERE> | sed 's/[ ]*remotes\/origin\///' | xargs -I name git push origin :name |