{"id":165,"date":"2010-08-14T14:23:00","date_gmt":"2010-08-14T14:23:00","guid":{"rendered":"http:\/\/filipesaraiva.info\/blog\/?p=165"},"modified":"2011-04-15T23:28:51","modified_gmt":"2011-04-15T23:28:51","slug":"usando-dropbox-ou-midias-removiveis-como-um-repositorio-git","status":"publish","type":"post","link":"https:\/\/filipe.saraiva.tec.br\/blog\/?p=165","title":{"rendered":"Usando Dropbox ou M\u00eddias Remov\u00edveis como um Reposit\u00f3rio Git"},"content":{"rendered":"<div style=\"text-align: justify;\"><a href=\"http:\/\/algoritmizando.com\/wp-content\/uploads\/2010\/04\/dropbox.png\" target=\"_blank\" onblur=\"try {parent.deselectBloggerImageGracefully();} catch(e) {}\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"display: block; margin-top: 0px; margin-bottom: 10px; text-align: center; cursor: pointer; border: 0pt none;\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2010\/08\/dropbox.jpg\" border=\"0\" alt=\"\" width=\"352\" height=\"288\" \/><\/a>Desde quando ingressei no mestrado estive atr\u00e1s de um reposit\u00f3rio particular de c\u00f3digo que pudesse utilizar para alguns projetos. Antigamente eu nem ligava para este tipo de gerenciamento sobre meus programas e arquivos: mas depois que trabalhei um tempo na <a href=\"http:\/\/www.infoway-pi.com.br\/\">Infoway<\/a>, vi o quanto este tipo de ferramenta \u00e9 interessante.<\/div>\n<div style=\"text-align: justify;\">Como n\u00e3o consegui encontrar um reposit\u00f3rio barato (e tamb\u00e9m n\u00e3o consegui convencer o pessoal da parte t\u00e9cnica do laborat\u00f3rio a instalar um), fui atr\u00e1s de alternativas que suprissem essa necessidade.&nbsp;<\/p>\n<p>Foi quando encontrei v\u00e1rios tutoriais que ensinavam como usar o <a href=\"http:\/\/git-scm.com\/\">Git<\/a> no <a href=\"http:\/\/www.dropbox.com\/\">Dropbox<\/a>. Dropbox, para quem n\u00e3o sabe, \u00e9 um servi\u00e7o de armazenamento de arquivos na nuvem: voc\u00ea se cadastra, baixa o software (compat\u00edvel com os principais sistemas operacionais) e tem a disposi\u00e7\u00e3o um espa\u00e7o de 2 GB  gratuitos (expans\u00edveis em servi\u00e7os pagos) para sincronizar seus dados.<\/p>\n<p>Legal tamb\u00e9m \u00e9 a forma como se d\u00e1 essa sincroniza\u00e7\u00e3o: o Dropbox cria uma pasta nos seus documentos (chamada &#8220;Dropbox&#8221;) e, sempre que voc\u00ea inicializa o servi\u00e7o, ele sincroniza todos os dados que est\u00e3o nessa pasta com a nuvem, de forma simples e transparente.<\/p>\n<\/div>\n<div style=\"text-align: justify;\">J\u00e1 o <a href=\"http:\/\/git-scm.com\/\">Git<\/a> \u00e9 um software para controle de vers\u00e3o primeiramente desenvolvido por Linus Torvalds para dar conta do gerenciamento do desenvolvimento do Linux. O Git tem uma arquitetura distribu\u00edda, que o difere dos mais comuns versionadores <a href=\"http:\/\/www.nongnu.org\/cvs\/\">CVS<\/a> e <a href=\"http:\/\/subversion.tigris.org\/\">SVN<\/a>. O Git j\u00e1 cresceu bastante em import\u00e2ncia, e hoje v\u00e1rios grandes projetos de software livre o utilizam como padr\u00e3o, como o pr\u00f3prio <a href=\"http:\/\/git.kernel.org\/\">Linux<\/a>, <a href=\"http:\/\/git.gnome.org\/browse\/\">Gnome<\/a> e <a href=\"http:\/\/qt.gitorious.org\/\">Qt<\/a>, ou est\u00e3o migrando para ele, como o <a href=\"http:\/\/projects.kde.org\/\">KDE<\/a>.&nbsp;<\/p>\n<p>Esta arquitetura distribu\u00edda \u00e9 que permite utilizar o Dropbox, por exemplo, como um reposit\u00f3rio Git. Cada diret\u00f3rio de trabalho Git \u00e9 um reposit\u00f3rio com todos os hist\u00f3ricos e  habilidade total de controle das revis\u00f5es, n\u00e3o dependente de acesso a  uma rede ou a um servidor central.<\/p>\n<p>Ou seja &#8211; essa caracter\u00edstica do Git permite utilizar at\u00e9 um pen drive como seu reposit\u00f3rio ambulante de c\u00f3digo!<\/p>\n<div style=\"text-align: center;\"><a href=\"http:\/\/www.yorkblog.com\/explorer\/gadgets.jpg\" onblur=\"try {parent.deselectBloggerImageGracefully();} catch(e) {}\"><img decoding=\"async\" style=\"display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 452px; height: 339px;\" src=\"http:\/\/www.yorkblog.com\/explorer\/gadgets.jpg\" border=\"0\" alt=\"\" \/><\/a><span style=\"font-style: italic;\">Seu reposit\u00f3rio Git no bolso<br \/>\n<\/span><\/div>\n<p>Ent\u00e3o, as dicas para uso do Dropbox como reposit\u00f3rio Git tamb\u00e9m podem ser aplicadas para usar qualquer m\u00eddia remov\u00edvel como reposit\u00f3rio.<\/p>\n<p><span style=\"font-weight: bold;\">M\u00e3o na massa<\/span><\/p>\n<p>Abra<span style=\"font-weight: bold;\"> <\/span>um terminal e v\u00e1 crie um diret\u00f3rio para seu projeto; ou v\u00e1 a algum projeto existente. No nosso exemplo, vamos criar um pasta para nosso projeto chamada&#8230; &#8220;projeto&#8221;.<\/p>\n<div style=\"text-align: center;\"><span style=\"font-weight: bold;\">mkdir ~\/projeto<\/span>&nbsp;<\/p>\n<div style=\"text-align: justify;\">Agora entre na pasta e inicie um reposit\u00f3rio Git com o comando&nbsp;<\/p>\n<div style=\"text-align: center;\"><span style=\"font-weight: bold;\">git init&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div style=\"text-align: justify;\"><span style=\"font-weight: bold;\"> <\/span>Em seguida, crie uma pasta para seu projeto no Dropbox.&nbsp;<\/p>\n<div style=\"text-align: center;\"><span style=\"font-weight: bold;\">mkdir ~\/Dropbox\/projeto&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div style=\"text-align: justify;\">Ainda na pasta que voc\u00ea criou para o projeto, onde voc\u00ea iniciou um reposit\u00f3rio Git, d\u00ea o seguinte comando:&nbsp;<\/p>\n<div style=\"text-align: center;\"><span style=\"font-weight: bold;\">git clone &#8211;bare . ~\/Dropbox\/projeto\/projeto.git<\/span>&nbsp;<\/p>\n<div style=\"text-align: justify;\">(A op\u00e7\u00e3o <span style=\"font-weight: bold;\">bare<\/span> s\u00e3o <span style=\"font-weight: bold;\">dois h\u00edfens<\/span>. Maldito editor de texto! ;))<br \/>\nCom este comando, voc\u00ea estar\u00e1 clonando seu reposit\u00f3rio local na pasta do seu projeto no Dropbox. Pronto, agora voc\u00ea j\u00e1 tem um reposit\u00f3rio criado!&nbsp;<\/p>\n<p>Falta configurarmos agora para onde seu reposit\u00f3rio local ir\u00e1 referenciar os push&#8217;s e pull&#8217;s do Git. Digite:<\/p>\n<div style=\"text-align: center;\"><span style=\"font-weight: bold;\">git remote add origin ~\/Dropbox\/projeto\/projeto.git&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div style=\"text-align: justify;\">Pronto! Tudo feito!&nbsp;<\/p>\n<p>Agora, sempre que voc\u00ea executar o Dropbox ele ir\u00e1 sincronizar os arquivos que est\u00e3o na pasta, inclusive os que fazem o reposit\u00f3rio Git. Assim, em outro computador, voc\u00ea poder\u00e1 baix\u00e1-los em um reposit\u00f3rio Git local!<\/p>\n<p>Como o Dropbox tamb\u00e9m permite que voc\u00ea compartilhe arquivos com outros usu\u00e1rios, voc\u00ea tamb\u00e9m poder\u00e1 compartilhar a pasta do seu reposit\u00f3rio e ter, de fato, um reposit\u00f3rio Git privado para times de desenvolvimento! Legal heim?<br \/>\n<span style=\"font-weight: bold;\"> <\/span><\/p>\n<\/div>\n<p><\/span><\/div>\n<\/div>\n<\/div>\n<p><span style=\"font-weight: bold;\"> <\/span><\/p>\n<\/div>\n<p><\/span><\/div>\n<p><span style=\"font-weight: bold;\"> <\/span><\/p>\n<\/div>\n<p><\/span><\/div>\n<\/div>\n<\/div>\n<p><span style=\"font-weight: bold;\"> <\/span><br \/>\n<span style=\"font-weight: bold;\">Obs. 1: <\/span>Utilizar as nuvens pode trazer algumas consequencias n\u00e3o t\u00e3o interessantes &#8211; j\u00e1 dizia Stallman. Ent\u00e3o, utilize estes servi\u00e7os por sua conta e risco;<\/p>\n<p><span style=\"font-weight: bold;\">Obs. 2:<\/span> Como j\u00e1 est\u00e1 referenciado no texto, estas dicas tamb\u00e9m serve para voc\u00ea usar qualquer midia remov\u00edvel com permiss\u00e3de escrita e leitura (pen drive, HD externo, celular com entrada USB, disquete) como reposit\u00f3rio Git. Os comandos s\u00e3o os mesmos!;<\/p>\n<p><span style=\"font-weight: bold;\">Obs. 3:<\/span> Meu reposit\u00f3rio Git p\u00fablico est\u00e1 no <a href=\"http:\/\/gitorious.org\/\">Gitorious<\/a>. Interessado? <a href=\"http:\/\/gitorious.org\/%7Efilipesaraiva\">http:\/\/gitorious.org\/~filipesaraiva<\/a> \ud83d\ude09<\/p>\n<\/div>\n<div class=\"blogger-post-footer\"><script type=\"text\/javascript\"><\/script><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Desde quando ingressei no mestrado estive atr\u00e1s de um reposit\u00f3rio particular de c\u00f3digo que pudesse utilizar para alguns projetos. Antigamente eu nem ligava para este tipo de gerenciamento sobre meus programas e arquivos: mas depois que trabalhei um tempo na Infoway, vi o quanto este tipo de ferramenta \u00e9 interessante. Como n\u00e3o consegui encontrar um&hellip;&nbsp;<a href=\"https:\/\/filipe.saraiva.tec.br\/blog\/?p=165\" class=\"\" rel=\"bookmark\">Continue a ler &raquo;<span class=\"screen-reader-text\">Usando Dropbox ou M\u00eddias Remov\u00edveis como um Reposit\u00f3rio Git<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[4,9],"tags":[25,11,5],"class_list":["post-165","post","type-post","status-publish","format-standard","hentry","category-cibercultura","category-software-livre","tag-ciencia-da-computacao","tag-desenvolvimento","tag-tutoriais"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1p2Jh-2F","jetpack_sharing_enabled":true,"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/posts\/165","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=165"}],"version-history":[{"count":2,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/posts\/165\/revisions"}],"predecessor-version":[{"id":251,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/posts\/165\/revisions\/251"}],"wp:attachment":[{"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=165"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=165"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=165"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}