There are many ways to use git and organizing the code changes from multiple branches could look chaotic if you do a simple “git merge *new_feature_branch*” onto your master. This is especially true when:
* there are multiple commits
* 2 feature branches are simultaneously worked on with commits spanning a great time frame
when viewing them in your master branch you end up seeing all commits from both branches in one history.
a way to get around this is to “git merge –squash *new_feature_branch*” then “git commit -m ‘adding new feature branch:new_feature_branch'”
as long as you don’t delete the branches, you’ll have the multiple commits viewable from that branch. On the master branch you only see 1 commit for all the changes that happened within that branch. This keeps the master branch history/log only concerned with tracking the changes at branch level.