<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>sh/garlic.sh</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,3 +1,11 @@
+== 0.1.9
+
+* 1 major enhancement
+  * added garlic shell commands (sh/garlic.sh) for easing the galric workflow
+    to use them, add this to your ~/.profile
+    
+      source `gem environment gemdir`/gems/ianwhite-garlic*/sh/garlic.sh
+
 == 0.1.8
 
 * 1 bugfix</diff>
      <filename>History.txt</filename>
    </modified>
    <modified>
      <diff>@@ -99,6 +99,32 @@ h2. Rake tasks
 If you prefer to use garlic via rake tasks, then just require 'garlic/tasks' and you'll get a bunch of em.
 Once required, do rake -T to see descriptions.
 
+h2. garlic workflow shell commands
+
+If you add the following line to your .profile
+
+  source `gem environment gemdir`/gems/ianwhite-garlic*/sh/garlic.sh
+  
+Then you'll get these 4 new shell commands:
+
+  gcd [target]    cds into the specified target working repo
+  gcdp [target]   cds into the specified target plugin in the working repo
+  gup             cds back up to the garlic'd repo from within a working path
+  gpush [branch]  from within a working repo, pushes changes back to the local garlic target, and resets
+                  local changes in that target to HEAD.
+                  
+This means you might have a workflow as follows (example is for a plugin):
+
+  # run garlic, see probs in '2-2-stable'
+  
+  gcdp 2-2  # =&gt; takes you into the working repo in the '2-2-stable' target
+  
+  # fix the changes, make some commits
+  
+  gpush     # =&gt; pushes the changes back to the enclosing garlic'd repo
+  gup       # =&gt; go back up there
+  garlic    # =&gt; rerun garlic to see how the changes affect the other targets
+  
 h2. Lend a hand
 
 This is an early release, so there is plenty of scope for changes and improvement</diff>
      <filename>README.textile</filename>
    </modified>
    <modified>
      <diff>@@ -20,7 +20,7 @@ spec = Gem::Specification.new do |s|
   s.rdoc_options &lt;&lt; &quot;--title&quot; &lt;&lt; &quot;Garlic&quot; &lt;&lt; &quot;--line-numbers&quot;
   s.test_files    = FileList[&quot;spec/**/*_spec.rb&quot;]
   s.files         = FileList[
-    &quot;lib/**/*.rb&quot;, &quot;templates/*.rb&quot;,
+    &quot;lib/**/*.rb&quot;, &quot;templates/*.rb&quot;, &quot;bin/*&quot;, &quot;sh/*&quot;,
     &quot;License.txt&quot;, &quot;README.textile&quot;, &quot;Todo.txt&quot;, &quot;History.txt&quot;
   ]
   s.executables   = [&quot;garlic&quot;]</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -6,12 +6,12 @@ Gem::Specification.new do |s|
 
   s.required_rubygems_version = Gem::Requirement.new(&quot;&gt;= 0&quot;) if s.respond_to? :required_rubygems_version=
   s.authors = [&quot;Ian White&quot;]
-  s.date = %q{2009-02-08}
+  s.date = %q{2009-06-27}
   s.default_executable = %q{garlic}
   s.description = %q{Set of commands/rake-tasks for CI against multiple version of rails/deps.}
   s.email = %q{ian.w.white@gmail.com}
   s.executables = [&quot;garlic&quot;]
-  s.files = [&quot;lib/garlic/configurator.rb&quot;, &quot;lib/garlic/generator.rb&quot;, &quot;lib/garlic/repo.rb&quot;, &quot;lib/garlic/session.rb&quot;, &quot;lib/garlic/shell.rb&quot;, &quot;lib/garlic/target.rb&quot;, &quot;lib/garlic/tasks.rb&quot;, &quot;lib/garlic.rb&quot;, &quot;lib/tabtab_definitions/garlic.rb&quot;, &quot;templates/default.rb&quot;, &quot;templates/rspec.rb&quot;, &quot;templates/shoulda.rb&quot;, &quot;License.txt&quot;, &quot;README.textile&quot;, &quot;Todo.txt&quot;, &quot;History.txt&quot;, &quot;spec/garlic/repo_spec.rb&quot;, &quot;bin/garlic&quot;]
+  s.files = [&quot;lib/garlic/configurator.rb&quot;, &quot;lib/garlic/generator.rb&quot;, &quot;lib/garlic/repo.rb&quot;, &quot;lib/garlic/session.rb&quot;, &quot;lib/garlic/shell.rb&quot;, &quot;lib/garlic/target.rb&quot;, &quot;lib/garlic/tasks.rb&quot;, &quot;lib/garlic.rb&quot;, &quot;lib/tabtab_definitions/garlic.rb&quot;, &quot;templates/default.rb&quot;, &quot;templates/rspec.rb&quot;, &quot;templates/shoulda.rb&quot;, &quot;bin/garlic&quot;, &quot;sh/garlic.sh&quot;, &quot;License.txt&quot;, &quot;README.textile&quot;, &quot;Todo.txt&quot;, &quot;History.txt&quot;, &quot;spec/garlic/repo_spec.rb&quot;]
   s.has_rdoc = true
   s.homepage = %q{http://github.com/ianwhite/garlic/tree}
   s.rdoc_options = [&quot;--title&quot;, &quot;Garlic&quot;, &quot;--line-numbers&quot;]</diff>
      <filename>garlic.gemspec</filename>
    </modified>
    <modified>
      <diff>@@ -11,7 +11,7 @@ module Garlic
   module Version
     Major = 0
     Minor = 1
-    Tiny  = 8
+    Tiny  = 9
     
     String = [Major, Minor, Tiny].join('.')
   end</diff>
      <filename>lib/garlic.rb</filename>
    </modified>
    <modified>
      <diff>@@ -104,6 +104,11 @@ module Garlic
       shell.run
     end
     
+    define_command :path, &quot;return the work dir for the specified target&quot; do |*path_target|
+      self.run_targets = path_target.first if path_target.any?
+      puts determine_targets.first.path
+    end
+    
     define_command :run, &quot;Run each garlic TARGET&quot; do
       these_targets = determine_targets
       target_names, failed_names = these_targets.map{|t| t.name}, []</diff>
      <filename>lib/garlic/session.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>d2e0c7f1bfbc522388ee844ff93d7142cc287e87</id>
    </parent>
  </parents>
  <author>
    <name>Ian White</name>
    <email>ian.w.white@gmail.com</email>
  </author>
  <url>http://github.com/ianwhite/garlic/commit/6901921b1342c6b2529654e35b32c8aa9f25fae0</url>
  <id>6901921b1342c6b2529654e35b32c8aa9f25fae0</id>
  <committed-date>2009-06-27T14:17:15-07:00</committed-date>
  <authored-date>2009-06-27T14:17:15-07:00</authored-date>
  <message>Added sh/garlic.sh shell commands for imporving garlic workflow.

  gcd [target]    cds into the specified target working repo
  gcdp [target]   cds into the specified target plugin in the working repo
  gup             cds back up to the garlic'd repo from within a working path
  gpush [branch]  from within a working repo, pushes changes back to the local garlic target, and resets
                  local changes in that target to HEAD.

This means you might have a workflow as follows (example is for a plugin):

  # run garlic, see probs in '2-2-stable'

  gcdp 2-2  # =&gt; takes you into the working repo in the '2-2-stable' target

  # fix the changes, make some commits

  gpush     # =&gt; pushes the changes back to the enclosing garlic'd repo
  gup       # =&gt; go back up there
  garlic    # =&gt; rerun garlic to see how the changes affect the other targets</message>
  <tree>702db9b3d487b128cff64751b47fc1d2a6c1c293</tree>
  <committer>
    <name>Ian White</name>
    <email>ian.w.white@gmail.com</email>
  </committer>
</commit>
