{"id":1032,"date":"2008-11-16T12:57:26","date_gmt":"2008-11-16T10:57:26","guid":{"rendered":"http:\/\/planetozh.com\/blog\/?p=1032"},"modified":"2008-11-16T12:57:26","modified_gmt":"2008-11-16T10:57:26","slug":"automating-tortoisesvn-on-windows-to-update-multiple-repositories","status":"publish","type":"post","link":"https:\/\/planetozh.com\/blog\/2008\/11\/automating-tortoisesvn-on-windows-to-update-multiple-repositories\/","title":{"rendered":"Automating TortoiseSVN on Windows to Update Multiple Repositories"},"content":{"rendered":"<p>Working with SVN on Windows is pretty much synonym to using <a href=\"http:\/\/tortoisesvn.tigris.org\/\">TortoiseSVN<\/a> I guess. If you are running a <a href=\"http:\/\/trac.wordpress.org\/browser\/trunk\">trunk version of WordPress<\/a>, maintaining <a href=\"http:\/\/wordpress.org\/extend\/plugins\/\">plugins<\/a> or doing anything else collaboratively, chances are you&#39;re using this nice piece of software.<\/p>\n<p>When you log to you computer to get some coding work done, what is your first task? If &quot;I manually update several SVN repositories&quot;, the following is for you. TortoiseSVN has <a href=\"http:\/\/tortoisesvn.net\/docs\/nightly\/TortoiseSVN_en\/tsvn-automation.html\">command line support<\/a> that, even on Windows, can make things easier.<\/p>\n<p>Create a batch file, name it like <tt>updateSVN.bat<\/tt>, and paste:<\/p>\n<div id=\"ig-sh-1\" class=\"syntax_hilite\">\n\n\t\t<div class=\"toolbar\">\n\n\t\t<div class=\"view-different-container\">\n\t\t\t\t\t\t<a href=\"#\" class=\"view-different\">&lt; View <span>plain text<\/span> &gt;<\/a>\n\t\t\t\t\t<\/div>\n\n\t\t<div class=\"language-name\">code<\/div>\n\n\t\t\n\t\t<br clear=\"both\">\n\n\t<\/div>\n\t\n\t<div class=\"code\">\n\t\t<ol class=\"code\" style=\"font-family:monospace\"><li style=\"font-weight: normal;vertical-align:top\"><div style=\"font: normal normal 1em\/1.2em monospace;margin:0;padding:0;background:none;vertical-align:top\">@echo off<\/div><\/li>\n<li style=\"font-weight: normal;vertical-align:top\"><div style=\"font: normal normal 1em\/1.2em monospace;margin:0;padding:0;background:none;vertical-align:top\">FOR %%A IN (<\/div><\/li>\n<li style=\"font-weight: normal;vertical-align:top\"><div style=\"font: normal normal 1em\/1.2em monospace;margin:0;padding:0;background:none;vertical-align:top\">&nbsp; &nbsp; &quot;E:\\home\\ozh\\wordpress\\&quot;<\/div><\/li>\n<li style=\"font-weight: normal;vertical-align:top\"><div style=\"font: normal normal 1em\/1.2em monospace;margin:0;padding:0;background:none;vertical-align:top\">&nbsp; &nbsp; &quot;E:\\svn\\someplugin\\&quot;<\/div><\/li>\n<li style=\"font-weight: normal;vertical-align:top\"><div style=\"font: normal normal 1em\/1.2em monospace;margin:0;padding:0;background:none;vertical-align:top\">&nbsp; &nbsp; &quot;E:\\svn\\someproject\\&quot;<\/div><\/li>\n<li style=\"font-weight: normal;vertical-align:top\"><div style=\"font: normal normal 1em\/1.2em monospace;margin:0;padding:0;background:none;vertical-align:top\">) DO START TortoiseProc.exe \/command:update \/path:%%A \/closeonend:0<\/div><\/li>\n<\/ol>\t<\/div>\n\n<\/div>\n\n<p>A few comments:<\/p>\n<ul>\n<li>The &quot;<tt>FOR %%A<\/tt>&quot; loop will contain, obviously, paths to the projects you want to update.<\/li>\n<li>The &quot;<tt>START<\/tt>&quot; bit means &quot;start asynchronously, ie don&#39;t wait for end of previous task to launch next one&quot; so that all the Update windows will pop up simultaneously.<\/li>\n<li>the &quot;<tt>\/closeonend:0<\/tt>&quot; means, you guessed, &quot;don&#39;t close the Update window once it&#39;s done&quot;, so you can actually see what has been updated.<\/li>\n<\/ul>\n<p>There you go. You can even put this .bat file in your startup folder to get things updated when you turn your computer on.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Working with SVN on Windows is pretty much synonym to using TortoiseSVN I guess. If you are running a trunk version of WordPress, maintaining plugins or doing anything else collaboratively, chances are you&#39;re using this nice piece of software. When you log to you computer to get some coding work done, what is your first [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21],"tags":[339,2,283,4,245],"class_list":["post-1032","post","type-post","status-publish","format-standard","hentry","category-published","tag-batch","tag-code","tag-svn","tag-windows","tag-wordpress"],"_links":{"self":[{"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/posts\/1032","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/comments?post=1032"}],"version-history":[{"count":0,"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/posts\/1032\/revisions"}],"wp:attachment":[{"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/media?parent=1032"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/categories?post=1032"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/planetozh.com\/blog\/wp-json\/wp\/v2\/tags?post=1032"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}