Git

From Glitchdata
Jump to: navigation, search
ACTIVE TECHNOLOGY
  • Status: Active
  • Category: Source Code Management
  • Platform: Unix, Windows, MacOS, Multiple
  • Current Version: 1.7.4
  • Maturity: High
  • Licensing: GNU General Public License 2


Git is a good code management platform. For most users, consider Getting Started with Git For superusers, please read below.

Git is available from http://git-scm.org. When installed it provides two applications:

Git Bash is especially useful for Windows users that need unix functionality. A very useful reference manual - http://gitref.org/remotes/

Contents

Versions

We are working with versions:

  • Version 1.5.5.6 is provided via yum from epel. This doesn't support sub-modules.
  • Version 1.7 is needed for sub-modules. Will need to install manually.
  • Version 1.7.4.1 is the latest available at http://git-scm.com/



Architecting Codeflow and Integration

  • Integration Manager
  • Centralised vs Decentralized
  • Hierachical Integration

Because Git is designed to be highly flexible, it allow for many combinations of working styles. Examples:

  1. Local Development
  2. Local Development and a Single Shared repository
  3. Local Development and Multiple Shared repositories

Git Server Installation

cd /usr/local/
wget -c http://kernel.org/pub/software/scm/git/git-1.7.3.3.tar.bz2
tar -jxf ../src/git-1.7.3.3.tar.bz2
cd git-1.7.3.3/
./configure --prefix=/usr/local/ --without-python
make -j4
make install


Usage

Git Usage Patterns

  • Local Development (for Individuals)
  • Hub-Spoke (for Team)
  • MegaHub-Hub-Spoke (for multiple Teams)
  • Spoke-Spoke (for peer-to-peer)
  • Spoke-Spoke-Hub-Spoke-Spoke (mixed peer and team)
  • and many other combinations...


Git Performance

The internals of Git object storage is file-based. See Git Objects So the base performance of the repository is proportional to the speed of file access.

  • Performance begins to suffer > 10GB repository.
  • Add Ramdisk
  • Split codebase.


Git Training

Git Tools


Git Comparisons

Mercurial is really the only direct competitor.

Links

Licensing

Git is free software distributed under the terms of the GNU General Public License version 2.


blog comments powered by Disqus