TempGit¶ ↑
<img src=“http://travis-ci.org/CodeGnome/tempgit.png” />
Copyright and Licensing¶ ↑
Copyright Notice¶ ↑
Copyright 2011 Todd A. Jacobs All rights reserved.
Software License¶ ↑
The software is licensed under the GPLv3. The LICENSE is also included in the source tree.
README License¶ ↑
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 United States License
Purpose¶ ↑
Have you ever wanted to exercise some Git functionality in your unit or functional tests? The TempGit gem is designed to make life easier–and your filesystem cleaner–when writing Git-related tests.
Key Features¶ ↑
TempGit has some killer features to ease Git-related testing.
-
Instantiate as many Git repositories as you need for testing, each with its own unique directory context.
-
Doesn’t rely on potentially-shared environment variables for GIT_DIR or GIT_WORK_TREE. Each instance stores its own directory values.
-
Execute arbitrary Git commands in an instantiated context. If Git can run it, TempGit can run it, too.
-
Won’t clutter or clobber your current working directory.
-
Cleans up after itself.
Installation and Usage¶ ↑
This gem has been tested against Ruby 1.9.2. It definitly doesn’t work with Ruby 1.8.7, but patches are welcome.
Installing the Gem¶ ↑
gem install tempgit
Using the Library¶ ↑
require 'tempgit'
Example Usage¶ ↑
repo = TempGit::GitDir.new puts repo.git('log') repo.add_new_file puts repo.git('status') repo.commit_with_sequence_number puts repo.git('log')