diff options
author | Chris Rebert <code@rebertia.com> | 2015-07-23 00:56:17 +0300 |
---|---|---|
committer | Chris Rebert <code@rebertia.com> | 2015-07-23 00:56:17 +0300 |
commit | 4f570d74128db8726bd33b89e0115849bfe49669 (patch) | |
tree | 294ffbc0762a0763818cafaadee0809f2a29c0db | |
parent | 21e3a438fb7b41baedda0373ab132c652421fa7b (diff) |
Also delete remote refs before pulling, to prevent conflicts
Fixes #22, hopefully
-rw-r--r-- | src/main/scala/com/getbootstrap/savage/server/PullRequestPusher.scala | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/main/scala/com/getbootstrap/savage/server/PullRequestPusher.scala b/src/main/scala/com/getbootstrap/savage/server/PullRequestPusher.scala index 030736e..5f07fdf 100644 --- a/src/main/scala/com/getbootstrap/savage/server/PullRequestPusher.scala +++ b/src/main/scala/com/getbootstrap/savage/server/PullRequestPusher.scala @@ -21,6 +21,7 @@ class PullRequestPusher( } def pull(originRepo: RepositoryId): Boolean = { + deleteAllRemoteRefs() // clobberingly fetch all branch heads into a dummy remote SimpleSubprocess(Seq("git", "fetch", "--no-tags", "--recurse-submodules=no", originRepo.asPullRemote, "+refs/heads/*:refs/remotes/scratch/*")).run() match { case SuccessfulExit(_) => { @@ -49,10 +50,13 @@ class PullRequestPusher( false } } - // delete all remote refs + deleteAllRemoteRefs() + success + } + + private def deleteAllRemoteRefs() { implicit val logger = log gitRemoteRefsDirectory.deleteRecursively() - success } private def scheduleFailsafeBranchDeletion(branch: SavageBranch) { |