Git: Basic commands and scenarios

If you use a repository on one of the version control platforms like github, gitlab or bitbucket then you need some basic commands.

When I was first introduced to git many years ago, I had to start with git pull, add, commit and push. I use this bulk of commands till nowdays. These commands basically update your local version Additionally you will need git status to see where you are and what you want to add to the repository.

Commands

git pull – gets you the new code from the repository
git add yourFile.php – add data for next commit
git commit -m “message about your changes” – you can put custom message to your commit changes
git push – upload commits to the repository

Scenarios

Join the existing project

When you are invited to the existing project/repository you need to get the code to your local machine. You can find the the URL in the web gui of the repository and then you command git clone git@github.com:bcvsolutions/CzechIdMng.git <optional my folder name>

Creating your own project

Start with creating Git repository online first and use git clone to get it locally. Otherwise you have to make adjustments to connect it later. You will have to deal with existing files or master branch.

Easy workaround

If you already have the code and want to push it to a new repository. Then in my opinion the easiest way to make it happen is through new folder and copy the files and folders there. Rename your current folder to _old if needed, then do a git clone. Copy the files and folders from your _old folder to the repository and proceed with add, commit and push. In this way you don’t have to deal with main branch or other commands.

Git init way

If you have a newer version of git 2.28+ then you can use. New default branch name is “main” on github.

git config --global init.defaultBranch main

git init
git add .
git commit -m “message”
git remote add origin <URL of your git repository>
git push -u origin main – here could be master instead of main, if you happen to have it as a new default branch.

Create a develop branch

As soon as you start testing your code locally or on the server. Try to create a new branch called develop or staging as it will help you in the future to divide production and test environment.

git checkout main – go to the branch main
git pull
git checkout -b develop – create and switch to branch develop from current branch(main) – this is is a shortcut instead of using git branch

When you have properly tested your code and you ready to push the changes to a production environment. Merge develop to main branch. That way you will have a working code in the production and space for developing new features.

git checkout main
git pull
git merge develop

Remove changes from a file

This restores completely the file — you will loose changes in staged area
git checkout HEAD — myfile.java

Forgot to commit a change, which will cause a new commit with minor detail

git reset –soft HEAD~1
git commit -m “changes together”

Leave a comment