summaryrefslogtreecommitdiff
path: root/tool
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-08-26 21:02:23 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-08-26 21:02:23 +0000
commit6582a2f6f1de88b1e3960a8c3f1bef955c9aa50c (patch)
treec1b19ea2f1edf5d282f5b33b90a3ee7e1ace5a77 /tool
parent6de143f63dcef7eb15a5f488b5e23573b8b0ee78 (diff)
vcs.rb: refresh after dcommit
* tool/vcs.rb (VCS::GIT#commit): refresh until sync after dcommit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'tool')
-rw-r--r--tool/vcs.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/tool/vcs.rb b/tool/vcs.rb
index ec75840746..6925660f20 100644
--- a/tool/vcs.rb
+++ b/tool/vcs.rb
@@ -465,7 +465,13 @@ class VCS
rev = cmd_read(%W"#{COMMAND} svn info"+[STDERR=>[:child, :out]])[/^Last Changed Rev: (\d+)/, 1]
ret = system(COMMAND, "svn", "dcommit")
if ret and rev
- cmd_read(%W"#{COMMAND} svn reset -r#{rev}")
+ old = [cmd_read(%W"#{COMMAND} log -1 --format=%H").chomp]
+ old << cmd_read(%W"#{COMMAND} svn reset -r#{rev}")[/^r#{rev} = (\h+)/, 1]
+ 3.times do
+ sleep 2
+ system(*%W"#{COMMAND} pull --no-edit --rebase")
+ break unless old.include?(cmd_read(%W"#{COMMAND} log -1 --format=%H").chomp)
+ end
end
ret
end