diff --git a/fserver.drush.inc b/fserver.drush.inc
index 4326eb7..938f1e1 100644
--- a/fserver.drush.inc
+++ b/fserver.drush.inc
@@ -315,7 +315,7 @@ class FserverProject_git {
    */
   function __destruct() {
     if (isset($this->path)) {
-      drush_op('drush_shell_exec', "rm -rf {$this->path}");
+      drush_op('drush_shell_exec', "rm -rf %s", $this->path);
     }
   }
 
@@ -325,7 +325,7 @@ class FserverProject_git {
   function init_wc() {
     if (!isset($this->path)) {
       $this->path = file_directory_temp() . '/fserver_git_'. $this->FserverProject->name .'_'. time();
-      drush_op('drush_shell_exec', "git clone {$this->FserverProject->repository} {$this->path}");
+      drush_op('drush_shell_exec', "git clone %s %s", $this->FserverProject->repository, $this->path);
     }
   }
 
@@ -336,7 +336,7 @@ class FserverProject_git {
     if (!isset($this->tags)) {
       $this->tags = array();
       _drush_shell_exec_output_set(' '); // Clear output cache.
-      drush_op('drush_shell_exec', "git ls-remote --tags {$this->FserverProject->repository} | awk '{print $2;}'");
+      drush_op('drush_shell_exec', "git ls-remote --tags %s | awk '{print $2;}'", $this->FserverProject->repository);
       $lines = drush_shell_exec_output();
       while ($line = array_shift($lines)) {
         $vc = array_pop(explode('/', $line));
@@ -358,10 +358,10 @@ class FserverProject_git {
 
       // Retrieve tag info
      _drush_shell_exec_output_set(' '); // Clear output cache.
-      drush_op('drush_shell_exec', "git --git-dir={$this->path}/.git log -1 --pretty=format:%ct {$vc}");
+      drush_op('drush_shell_exec', "git --git-dir=%s log -1 --pretty=format:%s %s", $this->path . '/.git', '%ct', $vc);
       $info = drush_shell_exec_output();
       $tag['timestamp'] = $info[0];
-      drush_op('drush_shell_exec', "git --git-dir={$this->path}/.git tag -l {$vc} -n 1000");
+      drush_op('drush_shell_exec', "git --git-dir=%s tag -l %s -n 1000", $this->path . '/.git', $vc);
       $info = drush_shell_exec_output();
       // Remove the tag from the first line of the message:
       $info[0] = str_replace($vc, '', $info[0]);
@@ -382,9 +382,10 @@ class FserverProject_git {
         // Create the directory if it doesn't exist.
         if (file_check_directory($file_path, TRUE)) {
           $vc = $tag['original'];
-          drush_op('drush_shell_exec', "git --git-dir={$this->path}/.git checkout {$vc}");
+          drush_op('drush_shell_exec', "git --git-dir=%s --work-tree=%s checkout %s", $this->path . '/.git', $this->path, $vc);
           $this->FserverProject->write_package_info($tag, array('.git'));
-          drush_op('drush_shell_exec', "tar -Pcf - --exclude='.git' --transform='s,{$this->path},{$this->FserverProject->name},' {$this->path} | gzip > {$file_path}/{$base}.tgz");
+          $target_filepath = "{$file_path}/{$base}.tgz";
+          drush_op('drush_shell_exec', "tar -Pcf - --exclude='.git' --transform='s,%s,%s,' %s | gzip > %s", $this->path, $this->FserverProject->name, $this->path, $target_filepath);
 
           // @TODO
           // We need to properly chown and permission these directories.
