When we clone an object, that contains other objects is important to keep in mind that the objects stored in the properties of the object being cloned will stay as references to the original object, by other words will not be cloned, thus any change in this objects will have a direct reflex on the original object. This type of Clone is called a Shallow Object Copy. So we can control what happens when an object is cloned by implementing the method __clone() and inside of it we will ensure that all properties containing another object will contain also a clone of that object.
The Usual Way Each time we need to checkout to the previous branch, we type git checkout previous-branch-name or when using ZSH Shell we can just type gco previous-branch-name. How to Git Checkout to Previous Branch in a Lazy and Fast Way Instead of the traditional way, described above, we can be lazy and fast at same time ;) Just type git checkout - or if using ZSH Shell gco -.
How to Check What Commits are in One Git Branch But Not in the Other Usually when comparing two branches we will use Git Diff Command that will show what lines of code are different between them. Now, how do we do when we only want to see what commits we have in one branch that are not present in other branch? So to get for branch1 a list of commits that are missing from branch2 we will use the Git Log Command.
The First Git Commit So, you find your self in a situation where you have created your first git commit in a brand new repo, but you have committed some files you won’t want to track. To solve this you can go the Git way or you can just recreate the Git repo. The Git Ways of Resetting the First Git Commit Using one of the Git approaches will reset the first git commit without loosing: