Automate your Deployment with GitHub Actions

Devising ideas to writing code and finally deploying finished products can be quite tedious at times. You need to handle many things beyond just writing the code. But what if you could take some of this work off your shoulders? Well, this is where GitHub Actions really shines. In this article, we will cover how to create a workflow that will trigger the deployment using GitHub Actions into GitHub Pages whenever there is any change(s) found in the master branch of the repository. Lets go through some fundamentals 👨🏻‍💻 Already know these fundamentals? You may then skip directly to action

Enable Git auto-complete on Mac terminals

I have been using Ubuntu for most of my development works for a long time. But recently I also started working on a Mac on one of my projects. This was the first time I was using it. Most of the things felt homely but the first thing that caught my attention was, there no auto-complete feature available on the terminal for Git commands. Git is the first step to start working on any project, so this small thing was what I wanted to fix on Mac. I asked few of my fellow Mac using friends but they said it

Deployment of Rails App on DigitalOcean with Capistrano, Nginx and Passenger - Part 2

In the previous article, we have seen how to configure DigitalOcean Droplet. Now let's proceed further to set up our application repository and Ngnix with Phusion Passenger on the DigitalOcean droplet. 1. Install RVM and Ruby We will install ruby using Ruby Version Manager(RVM) as it gives more flexibility to manage multiple ruby versions on the same system over rbenv, chruby, etc. Import RVM GPG key, before installing RVM: gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 Then, install RVM: curl -sSL https://get.rvm.io | bash -s stable Load RVM script and run requirement command to manage the

Git aliases and load it through a file in to terminal

Git Aliases and set it up in UNIX I have created a list of git aliases that can be used in our day to day work. Most of us might have configured this. But I have listed few more aliases that are normally not used. like 'ggr' # Add and Removes alias "ga"='git add' alias "gai"='git add -i' alias 'grm'='git rm' alias 'gra'='git remote add' alias "grr"='git remote rm' # Commit and Pushes alias "gcm"='git commit -m' alias "gca"='git commit -am' alias "gp"='git push' alias "gpu"='git pull' alias "gpo"='git push origin' alias

Hub - create a new github repo!

hub is a command line tool that wraps git in order to extend it with extra features and commands that make working with GitHub easier. Install $ gem install hub $ hub hub standalone > ~/bin/hub && chmod +x ~/bin/hub check successful installation with $hub version Create a new github repo demo-project$ git create [NAME] [-p] [-d DESCRIPTION] [-h HOMEPAGE] annotations -p create a private repository -d set the repository's description -h set the homepage URL This will create a new public GitHub repository from the current git repository and add remote origin at "git@github.com:USER/REPOSITORY.git"

Integrating Github with Pivotal Tracker

Everyone these days working with one or the other Version controls systems and Agile tracking tools. Currently for our most of the project, we are working with github and for tracking we all are using Pivotal, Trello or some other tools. Now these apps are having some cool apis and api tokens which helps us integrating Version control system and tracking tools. So that when we commit something that same message gets saved in our tracking tool. At the same time those tracking tools change their status automatically from Started -> Finished -> Delivered etc I am going

Git - Branch merging process

Pretty often we are in situation where we need to merge branches especially while using "branch per feature" pattern to push our changes to repo. You may follow these simple yet very important steps to merge your branches. Assuming that you are on "master" branch on your local repo, do this to check the branch. git branch Expected output master Checkout the branch you want to merge, example you want to merge branch "feature-devise", So do this git checkout feature-devise Expected output master feature-devise Come back on master branch to start merge process git