qmul-ecs719p / git

Instructions for the ECS719P labs sessions on version control with Git

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Version Control with Git

Requirements:

In any software development, one of the most important tools is version control software such as Git (git) and Mercurial (hg). We will look at git, although hg is just as good and works in almost exactly the same way.

The source code or digital content is stored in a repository. The repository does not only contain the latest version of all files, but the complete history of all changes to the files since they were added to the repository.

A user can checkout the repository, and obtain a local working copy of the files. All changes are made to the files in the local working directory, where files can be added, removed and updated.

When a task has been completed, the changes to the local files are commited (saved to the repository).

If someone else has been making changes to the same files, a conflict can occur. In many cases conflicts can be resolved automatically by the system, but in some cases we might manually have to merge different changes together.

It is often useful to create a new branch in a repository, or a fork or clone of an entire repository, when we doing larger experimental development. The main branch in a repository is called master. When a branch or a fork is completed, it can be merged in to the master branch.

With Git or Mercurial, we can pull and push changesets between different repositories. For example, between a local copy of there repository to a central online reposistory (for example on a community repository host site like github.com).

We cover the basics in workflow. For more information, you could check official github guides or the courses at Github Learning Lab.

About

Instructions for the ECS719P labs sessions on version control with Git