Git: Difference between revisions

From Wiki RB4
Line 28: Line 28:
===Delete a Repository===
===Delete a Repository===
Delete the folder which contains the repository.
Delete the folder which contains the repository.
==Resources==
* http://www.vogella.com/tutorials/Git/article.html

Revision as of 16:03, 27 November 2016

Concepts

Git is a Distributed Version Control Systems (DVCS). Clients don’t just check out the latest snapshot of the files: they fully mirror the repository. Thus if any server dies, and these systems were collaborating via it, any of the client repositories can be copied back up to the server to restore it. Every clone is really a full backup of all the data.

For Git a version history is a stream of snapshots of the complete project. Therefore the local repository contains the complete history of a project. Conceptually a commit object (short:commit) represents a version of all files tracked in the repository at the time the commit was created.

Git has three main states that your files can reside in: committed, modified, and staged.

  • Committed (Tracked) means that the data is safely stored in your local database (git commit).
  • Modified means that you have changed the file but have not committed it to your database yet.
  • Staged means that you have marked a modified file in its current version to go into your next commit snapshot (git add).
  • Untracked means the file is not tracked by the Git repository. This means that the file never staged nor committed.

The Git directory is where Git stores the metadata and object database for your project. This is the most important part of Git, and it is what is copied when cloning a repository from another computer.

The working directory is a single checkout of one version of the project. These files are pulled out of the compressed database in the Git directory and placed on disk for you to use or modify. It corresponds to a checkout of one version of the repository with potential changes done by the user. The user can change the files in the working tree by modifying existing files and by creating and removing files.

The staging area is a file, generally contained in your Git directory, that stores information about what will go into your next commit. It’s sometimes referred to as the index, but it’s also common to refer to it as the staging area.

Cloning is the process of copying an existing Git repository via the Git tooling. Pushing means sending a new version in the local repository to a remote repositories.

A URL in Git determines the location of the repository.

A tag points to a commit which uniquely identifies a version of the Git repository. The benefit of tags is to mark the repository for a specific reason, e.g., with a release.

Git can be configured to ignore certain files and directories for repository operations. This is configured via one or several .gitignore files. Typically, this file is located at the root of your Git repository but it can also be located in sub-directories. In the second case the defined rules are only valid for the sub-directory and below.

Operations

Delete a Repository

Delete the folder which contains the repository.


Resources