From 5ca654531c85b6bb69eb4a324dbe2244c2ac2a3a Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Mon, 7 Nov 2016 02:47:55 +0000 Subject: [PATCH] dgit: clone: Break out clone_set_head and clone_finish Again, we are going to want to reuse these bits. No functional change right now. Signed-off-by: Ian Jackson --- dgit | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/dgit b/dgit index 554a5abb..0f9236ce 100755 --- a/dgit +++ b/dgit @@ -3072,6 +3072,22 @@ sub setup_new_tree () { setup_useremail(); } +sub clone_set_head () { + open H, "> .git/HEAD" or die $!; + print H "ref: ".lref()."\n" or die $!; + close H or die $!; +} +sub clone_finish ($) { + my ($dstdir) = @_; + runcmd @git, qw(reset --hard), lrref(); + runcmd qw(bash -ec), <<'END'; + set -o pipefail + git ls-tree -r --name-only -z HEAD | \ + xargs -0r touch -r . -- +END + printdone "ready for work in $dstdir"; +} + sub clone ($) { my ($dstdir) = @_; canonicalise_suite(); @@ -3082,9 +3098,7 @@ sub clone ($) { runcmd @git, qw(init -q); my $giturl = access_giturl(1); if (defined $giturl) { - open H, "> .git/HEAD" or die $!; - print H "ref: ".lref()."\n" or die $!; - close H or die $!; + clone_set_head(); runcmd @git, qw(remote add), 'origin', $giturl; } if ($hasgit) { @@ -3101,13 +3115,7 @@ sub clone ($) { runcmd @git, qw(remote add vcs-git), $vcsgiturl; } setup_new_tree(); - runcmd @git, qw(reset --hard), lrref(); - runcmd qw(bash -ec), <<'END'; - set -o pipefail - git ls-tree -r --name-only -z HEAD | \ - xargs -0r touch -r . -- -END - printdone "ready for work in $dstdir"; + clone_finish($dstdir); } sub fetch () { -- 2.30.2