Skip to content
Browse files

Add support for checking out specific git commit

  • Loading branch information...
1 parent 8997fe8 commit 3ef7db59cbe819b53244f86d682b0065ccd9b82a @ble ble committed with tuncer Aug 12, 2011
Showing with 8 additions and 3 deletions.
  1. +8 −3 src/rebar_deps.erl
View
11 src/rebar_deps.erl
@@ -354,7 +354,10 @@ download_source(AppDir, {git, Url, {tag, Tag}}) ->
[{cd, filename:dirname(AppDir)}]),
rebar_utils:sh(?FMT("git checkout -q ~s", [Tag]), [{cd, AppDir}]);
download_source(AppDir, {git, Url, Rev}) ->
- download_source(AppDir, {git, Url, {branch, Rev}});
+ ok = filelib:ensure_dir(AppDir),
+ rebar_utils:sh(?FMT("git clone -n ~s ~s", [Url, filename:basename(AppDir)]),
+ [{cd, filename:dirname(AppDir)}]),
+ rebar_utils:sh(?FMT("git checkout -q ~s", [Rev]), [{cd, AppDir}]);
download_source(AppDir, {bzr, Url, Rev}) ->
ok = filelib:ensure_dir(AppDir),
rebar_utils:sh(?FMT("bzr branch -r ~s ~s ~s",
@@ -396,8 +399,10 @@ update_source(AppDir, {git, _Url, {tag, Tag}}) ->
ShOpts = [{cd, AppDir}],
rebar_utils:sh("git fetch --tags origin", ShOpts),
rebar_utils:sh(?FMT("git checkout -q ~s", [Tag]), ShOpts);
-update_source(AppDir, {git, Url, Refspec}) ->
- update_source(AppDir, {git, Url, {branch, Refspec}});
+update_source(AppDir, {git, _Url, Refspec}) ->
+ ShOpts = [{cd, AppDir}],
+ rebar_utils:sh("git fetch origin", ShOpts),
+ rebar_utils:sh(?FMT("git checkout -q ~s", [Refspec]), ShOpts);
update_source(AppDir, {svn, _Url, Rev}) ->
rebar_utils:sh(?FMT("svn up -r ~s", [Rev]), [{cd, AppDir}]);
update_source(AppDir, {hg, _Url, Rev}) ->

0 comments on commit 3ef7db5

Please sign in to comment.
Something went wrong with that request. Please try again.