git

Mastering git, Part 13, Detached HEAD in Git

Detached HEAD Before everything, let’s have a look at some stuff. Everything in Git is about commits, and many git commands accept commits as a parameter, i.e.

We have to understand how to reference commits. Hash The SHA-1 hash of a commit is the most straightforward method to refer to it. In the

[…]

Mastering git, Part 13, Detached HEAD in Git Read More »

Mastering git, Part 9, git Submodule

Set up: This allows the repository to be local a file directory:

Create remote:

Creating repos1

Creating lib1

Adding lib1 as submodule to repos1

Cloning a Project with Submodules to repos2

Working on Submodule lib1 in repos2:

Pulling in Upstream Changes from the Submodule Remote in repos1:

Mastering git, Part 9, git Submodule Read More »

Mastering git, Part 4, git merge, git diff with GUI tools, view git history (commit log), blame

Diff Before following this post, make sure you have already set up everything from my other post regarding the configuration of the git environment. Diff command will allow you to compare two different commits, let’s set up a repository:

Now in the second repository, we make some changes:

now let’s back to the first repository and see

Mastering git, Part 4, git merge, git diff with GUI tools, view git history (commit log), blame Read More »

Mastering git, Part 3 (Undo local changes, git revert, git reset, git amend and git clean)

1. Checkout The git checkout  moves the HEAD ref pointer to a specified commit. To demonstrate this, consider the following example:

Now you can change the HEAD with:

or

you can find all commits again by:

For instance:

1.2 Detached HEAD Any checkout of a commit that is not

Mastering git, Part 3 (Undo local changes, git revert, git reset, git amend and git clean) Read More »