SMART is a mnemonic acronym , giving criteria to guide in the setting of objectives, for example in project management , employee- performance management and personal development . The letters S and M usually mean specific and measurable . Possibly the most common version has the remaining letters referring to achievable , relevant and time-bound . However, the term's inventor had a slightly different version and the letters have meant different things to different authors, as described below. Additional letters have been added by some authors.
Assume that a user has a local feature branch and wants to push it to a branch on the remote repository. However, the branch has evolved and therefore pushing is not possible. Now it is good practice to fetch the latest state of the branch from the remote repository. Afterwards you rebase the local feature branch onto the remote tracking branch. This avoids an unnecessary merge commit. This rebasing of a local feature branch is also useful to incorporate the latest changes from remote into the local development, even if the user does not want to push right away.