Skip to content
walkerhound edited this page Oct 11, 2012 · 29 revisions

Back to Home

This page compiles different information about git or github

Table of Contents

Git Terminology

Wikipedia Article on Revision Control

a Git Primer

Version Control System (VCS)
A version control system keeps track of changes in files by saving multiple versions of files. A file version includes information about who made changes to the file and when the changes were made. If a file is changed in error, a previous version of the file can be restored.
Repository
A repository is a collection of files and directories - including history - that are controlled by a VCS.
Working Copy
A working copy or working directory is the local copy of a VCS repository.
Distributed Version Control System (DVCS)
A distributed version control system takes a peer to peer approach to version control. Each peer has a local copy of the VCS repository, including all history. Git is a distributed version control system.
Commit or check in
A commit or check in writes changes in the staging area back to the repository
Staging Area
The staging area stores information about what will go into the next commit. The staging area is sometimes called the index.

Basic Git Concepts

Git Best Practices

Link about Git Best Practices

PhenoGen Repository Best Practices

Best Practices for other TabakoffLab Repositories

  1. Use git for programs only
    1. The exception is that we also store some files used on the wiki in git
    2. Do not store data
    3. Do not store binaries and executables
  2. Commit early and often
    1. Enter useful Commit Messages
  3. By default, files will be considered to be owned by the person who initially added the file to the repository.
  4. Communicate when changing/copying files owned by someone else.
    1. If you have an improvement, you might want to change the file in place.
Discuss this with the original owner.
This file is now considered to be "shared".
    1. If you want to modify the program, copy it to a new location.
Let the original owner know.
You are the owner of the new file.
  1. Keep your local repository synchronized with the repository on github.
    1. Moving local changes to github:
      1. When you change a file that you own and that is not shared, push (or resync) the file to github after committing.
      2. For a file that is shared, the process is more complicated.
The easiest thing to do is to be sure that two people don't change a shared file at the same time.
    1. Moving changes on github to your local repository:
pull or resync with the github repository.
  1. Don't panic
    1. If you're not confident about a particular action, copy your working directory on the file system to be sure you don't lose anything








Git Books

Pro Git Book

Git Clients

List of git clients

Windows Client Overview

SourceTree Git Client for Mac OS X

Git Workflows

Git Workflows

Git Pages

Creating Git Pages

Git Notifications

Git Notifications

Jenkins

What is Jenkins?

Jenkins main page

Meet Jenkins

Clone this wiki locally