anchor.diff:  
   
   git_cmd(Repo, Cmd) ->
  -  git_cmd("git --git-dir="++Repo++" "++Cmd).
  +  git_cmd(["--git-dir=" ++ Repo | Cmd]).
   
   get_data(Port) ->
     receive
  
positive.code: 
  -compile(export_all).
  
  git_cmd(Cmd) ->
    % io:format("GIT: ~s~n", [Cmd]),
    Tag = make_ref(),
    GitPath = os:find_executable("git"),
    ["git" | Args] = string:tokens(Cmd, " "),
    {Pid,Mref} = erlang:spawn_monitor(
  	  fun() ->
  		  process_flag(trap_exit, true),
  
negative.code: 
  
  show(Repo, Path) ->
    Reply = git_cmd(Repo, ["show", "master:" ++ Path]),
    Reply.
  
  
  add(Repo, Path) ->
    git_cmd(Repo, ["add", Path]).
  
  commit(Repo, Options) ->
    Cmd = ["commit"] ++ case proplists:get_value(message, Options) of
      undefined -> [];
      Msg -> ["-m", Msg]
    end ++ case proplists:get_value(author, Options) of
      undefined -> [];
      Auth -> ["--author=" ++ Auth]
    end,
    git_cmd(Repo, Cmd).
  
  