How to force Git remove files that was tracked but is now in .gitignore
git rm -r --cached . git add . git commit -am "Remove ignored files"
git rm -r --cached . git add . git commit -am "Remove ignored files"
echo <password> | sudo -S <command>
References
http://superuser.com/questions/67765/sudo-with-password-in-one-command-line
References
http://stackoverflow.com/questions/22343224/difference-between-tilde-and-caret-in-package-json
Safe Mode:
Type this in a command prompt and hit Enter:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\MSIServer" /VE /T REG_SZ /F /D "Service"
Then start the Windows Installer service by typing
net start msiserver
References
http://www.thewindowsclub.com/make-windows-installer-work-in-safe-mode
# Fork mode $ pm2 start app.js --name my-api # Name process # Cluster mode $ pm2 start app.js -i 0 # Will start maximum processes with LB depending on available CPUs $ pm2 start app.js -i max # Same as above, but deprecated yet. # Listing $ pm2 list # Display all processes status $ pm2 jlist # Print process list in raw JSON $ pm2 prettylist # Print process list in beautified JSON $ pm2 describe 0 # Display all informations about a specific process $ pm2 monit # Monitor all processes # Logs $ pm2 logs [--raw] # Display all processes logs in streaming $ pm2 flush # Empty all log file $ pm2 reloadLogs # Reload all logs # Actions $ pm2 stop all # Stop all processes $ pm2 restart all # Restart all processes $ pm2 reload all # Will 0s downtime reload (for NETWORKED apps) $ pm2 gracefulReload all # Send exit message then reload (for networked apps) $ pm2 stop 0 # Stop specific process id $ pm2 restart 0 # Restart specific process id $ pm2 delete 0 # Will remove process from pm2 list $ pm2 delete all # Will remove all processes from pm2 list # Misc $ pm2 reset <process> # Reset meta data (restarted time...) $ pm2 updatePM2 # Update in memory pm2 $ pm2 ping # Ensure pm2 daemon has been launched $ pm2 sendSignal SIGUSR2 my-app # Send system signal to script $ pm2 start app.js --no-daemon $ pm2 start app.js --no-vizion $ pm2 start app.js --no-autorestart
$ pm2 start app.js # Start app.js $ pm2 start app.js -- -a 23 # Pass arguments '-a 23' argument to app.js script $ pm2 start app.js --name serverone # Start a process and name it as serverone # you can now stop the process by doing # pm2 stop serverone $ pm2 start app.js --node-args="--debug=7001" # --node-args to pass options to node V8 $ pm2 start app.js -i 0 # Start maximum processes depending on available CPUs (cluster mode) $ pm2 start app.js --log-date-format "YYYY-MM-DD HH:mm Z" # Log will be prefixed with custom time format $ pm2 start app.json # Start processes with options declared in app.json # Go to chapter Multi process JSON declaration for more $ pm2 start app.js -e err.log -o out.log # Start and specify error and out log
$ pm2 start echo.pl --interpreter=perl $ pm2 start echo.coffee $ pm2 start echo.php $ pm2 start echo.py $ pm2 start echo.sh $ pm2 start echo.rb
{ ".sh": "bash", ".py": "python", ".rb": "ruby", ".coffee" : "coffee", ".php": "php", ".pl" : "perl", ".js" : "node" }
References
http://pm2.keymetrics.io/docs/usage/quick-start/#cheatsheet
touch auth
nano auth
at the first line enter username and the second line pass
change this line in config file (*.ovpn):
auth-user-pass
to
auth-user-pass auth
References
https://www.ivpn.net/setup/gnu-linux-terminal.html
An animation lets an element gradually change from one style to another.
/* The animation code */ @keyframes example { from {background-color: red;} to {background-color: yellow;} } /* The element to apply the animation to */ div { width: 100px; height: 100px; background-color: red; animation-name: example; animation-duration: 4s; }
/* The animation code */ @keyframes example { 0% {background-color: red;} 25% {background-color: yellow;} 50% {background-color: blue;} 100% {background-color: green;} }
/* The animation code */ @keyframes example { 0% {background-color: red; left:0px; top:0px;} 25% {background-color: yellow; left:200px; top:0px;} 50% {background-color: blue; left:200px; top:200px;} 75% {background-color: green; left:0px; top:200px;} 100% {background-color: red; left:0px; top:0px;} }
Delay an Animation
div { width: 100px; height: 100px; position: relative; background-color: red; animation-name: example; animation-duration: 4s; animation-delay: 2s; }
Set How Many Times an Animation Should Run
div { width: 100px; height: 100px; position: relative; background-color: red; animation-name: example; animation-duration: 4s; animation-iteration-count: 3; }
use the value “infinite” to make the animation continue for ever
Run Animation in Reverse Direction or Alternate Cycles
div { width: 100px; height: 100px; position: relative; background-color: red; animation-name: example; animation-duration: 4s; animation-iteration-count: 3; animation-direction: reverse; }
div { width: 100px; height: 100px; position: relative; background-color: red; animation-name: example; animation-duration: 4s; animation-iteration-count: 3; animation-direction: alternate; }
Specify the Speed Curve of the Animation
#div1 {animation-timing-function: linear;} #div2 {animation-timing-function: ease;} #div3 {animation-timing-function: ease-in;} #div4 {animation-timing-function: ease-out;} #div5 {animation-timing-function: ease-in-out;}
CSS3 transitions allows you to change property values smoothly (from one value to another), over a given duration.
div { width: 100px; height: 100px; background: red; -webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */ transition: width 2s; }
div:hover { width: 300px; }
Change Several Property Values
div { -webkit-transition: width 2s, height 4s; /* Safari */ transition: width 2s, height 4s; }
Specify the Speed Curve of the Transition
#div1 {transition-timing-function: linear;} #div2 {transition-timing-function: ease;} #div3 {transition-timing-function: ease-in;} #div4 {transition-timing-function: ease-out;} #div5 {transition-timing-function: ease-in-out;}
Delay the Transition Effect
div { -webkit-transition-delay: 1s; /* Safari */ transition-delay: 1s; }
Transition + Transformation
div { -webkit-transition: width 2s, height 2s, -webkit-transform 2s; /* Safari */ transition: width 2s, height 2s, transform 2s; }
References
http://www.w3schools.com/css/css3_transitions.asp
translate()
The translate() method moves an element from its current position (according to the parameters given for the X-axis and the Y-axis).
div { -ms-transform: translate(50px, 100px); /* IE 9 */ -webkit-transform: translate(50px, 100px); /* Safari */ transform: translate(50px, 100px); }
rotate()
The rotate() method rotates an element clockwise or counter-clockwise according to a given degree.
div { -ms-transform: rotate(20deg); /* IE 9 */ -webkit-transform: rotate(20deg); /* Safari */ transform: rotate(20deg); }
scale()
The scale() method increases or decreases the size of an element (according to the parameters given for the width and height).
div { -ms-transform: scale(2, 3); /* IE 9 */ -webkit-transform: scale(2, 3); /* Safari */ transform: scale(2, 3); }
skewX()
The skewX() method skews an element along the X-axis by the given angle.
div { -ms-transform: skewX(20deg); /* IE 9 */ -webkit-transform: skewX(20deg); /* Safari */ transform: skewX(20deg); }
skewY()
skew()
matrix()
The matrix() method combines all the 2D transform methods into one.
References
http://www.w3schools.com/css/css3_2dtransforms.asp