summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Chacon <schacon@gmail.com>2008-03-13 13:33:49 -0700
committerScott Chacon <schacon@gmail.com>2008-03-13 13:33:49 -0700
commit10b880b418879e662feb91ce7af98560adeaa8bb (patch)
tree30659f051447dce690c20e9f361c774b87c95e74
parent8276fac333799c38b7df35f3f5522177d61f4e29 (diff)
downloadthird_party-ruby-git-10b880b418879e662feb91ce7af98560adeaa8bb.zip
third_party-ruby-git-10b880b418879e662feb91ce7af98560adeaa8bb.tar.gz
third_party-ruby-git-10b880b418879e662feb91ce7af98560adeaa8bb.tar.xz
added patch from Cassie Schmitz for file checkout
-rw-r--r--lib/git/base.rb5
-rw-r--r--lib/git/lib.rb7
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/git/base.rb b/lib/git/base.rb
index 2201eb5..a670fd8 100644
--- a/lib/git/base.rb
+++ b/lib/git/base.rb
@@ -277,6 +277,11 @@ module Git
self.lib.checkout(branch, opts)
end
+ # checks out an old version of a file
+ def checkout_file(version, file)
+ self.lib.checkout_file(version,file)
+ end
+
# fetches changes from a remote branch - this does not modify the working directory,
# it just gets the changes from the remote if there are any
def fetch(remote = 'origin')
diff --git a/lib/git/lib.rb b/lib/git/lib.rb
index 8003336..71f960a 100644
--- a/lib/git/lib.rb
+++ b/lib/git/lib.rb
@@ -434,6 +434,13 @@ module Git
command('checkout', arr_opts)
end
+
+ def checkout_file(version, file)
+ arr_opts = []
+ arr_opts << version.to_s
+ arr_opts << file.to_s
+ command('checkout', arr_opts)
+ end
def merge(branch, message = nil)
arr_opts = []