{"id":12283,"date":"2017-03-06T12:18:07","date_gmt":"2017-03-06T11:18:07","guid":{"rendered":"http:\/\/www.devapp.it\/wordpress\/?p=12283"},"modified":"2017-03-06T12:18:07","modified_gmt":"2017-03-06T11:18:07","slug":"imparare-ad-usare-git-primo-esempio-in-locale","status":"publish","type":"post","link":"https:\/\/www.devapp.it\/wordpress\/imparare-ad-usare-git-primo-esempio-in-locale\/","title":{"rendered":"Imparare ad usare git, primo esempio in locale"},"content":{"rendered":"<p>Dopo aver fatto la conoscenza di Git in quanto a finalit\u00e0 e installazione, possiamo iniziare a provarlo. Questo strumento d\u00e0 il massimo di s\u00e8 quando viene utilizzato in rete ma, per il momento, ne apprezzeremo i principi vedendolo al lavoro in locale.<\/p>\n<p>Supporremo di averlo installato su una macchina Linux Ubuntu ma le operazioni che svolgeremo potranno essere replicate in ogni altro possibile contesto.<\/p>\n<p>Diciamo subito che potremo lavorare ad un progetto, sotto la &#8220;supervisione&#8221; di Git, sia importandolo per la creazione di un nuovo repository sia clonando un repository gi\u00e0 esistente. In questo esempio,\u00a0creeremo una\u00a0cartella di lavoro, la importeremo in un repository che inizializzeremo e successivamente proveremo a clonarlo per ottenere una nuova area di lavoro.<\/p>\n<p>Quando avremo apportato modifiche ai nostri file queste potranno essere salvate definitivamente nel repository tramite la cosiddetta operazione di <em>commit<\/em> ma non prima di aver segnato tali modifiche nella <em>staging area <\/em>che possiamo considerare\u00a0una sorta di indice.<\/p>\n<p>Per condurre il nostro esperimento, per prima cosa, <strong>creiamo una cartella di lavoro<\/strong> e ci portiamo al suo interno:<\/p>\n<pre class=\"lang:sh decode:true\">$ mkdir cartella_lavoro\r\n$ cd cartella_lavoro<\/pre>\n<p>A questo punto, potremo <strong>inizializzare il repository<\/strong> con :<\/p>\n<pre class=\"lang:sh decode:true \">$ git init<\/pre>\n<p>a seguito del quale vedremo apparire una nuova cartella chiamata<em> .git<\/em>.<\/p>\n<p>Continuiamo il lavoro senza mai entrare nella cartella\u00a0<em>.git<\/em>. Creiamo dei file che, come abbiamo detto, non devono necessariamente essere codice ma anche semplici testi o file binari di altri formati. Noi a scopo di esempio creeremo del semplice testo con l&#8217;editor <em>vi<\/em>:<\/p>\n<pre class=\"lang:sh decode:true \">$ vi nota01.txt<\/pre>\n<p>Fatto ci\u00f2, dovremo <strong>aggiungere il file alla staging area<\/strong> con il comando <em>add<\/em>:<\/p>\n<pre class=\"lang:sh decode:true\">$ git add nota01.txt<\/pre>\n<p>ed infine registrare la modifica con il vero e proprio <em>commit<\/em>:<\/p>\n<pre class=\"lang:sh decode:true \">$ git commit -m 'Prima versione salvata'<\/pre>\n<p>La frase che abbiamo aggiunto dopo l&#8217;opzione -m \u00e8 un\u00a0messaggio\u00a0di log per mantenere memoria della modifica.<\/p>\n<p>A questo punto, prima di fare altri esperimenti potremo provare a clonare il nostro repository da un&#8217;altra postazione locale. Se, ad esempio, la nostra cartella ha per percorso \/home\/Sergio\/cartella_lavoro potremo andare in qualunque altra collocazione e digitare:<\/p>\n<pre class=\"lang:sh decode:true \">$ git clone \/home\/Sergio\/cartella_lavoro<\/pre>\n<p>e troveremo il nostro progetto completamente clonato in un&#8217;altra posizione, con all&#8217;interno la sua cartella repository .git e pronto ad essere gestito come un fork, indipendentemente dal suo progenitore.<\/p>\n<p>Questi passi che abbiamo visto sono solo un semplice modo per vedere le prime operazioni di Git al lavoro ma non certo per avere ancora il meglio da questo magnifico strumento.<\/p>\n<p>Continuate a seguirci e scoprirete il resto!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dopo aver fatto la conoscenza di Git in quanto a finalit\u00e0 e installazione, possiamo iniziare a provarlo&#8230;.<\/p>\n","protected":false},"author":561,"featured_media":12860,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[991,1728,1721,1407,495,1723],"class_list":["post-12283","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorial-pratici","tag-alternativa-a-svn","tag-git","tag-linux","tag-risorse-utili-open-source","tag-svn","tag-version-control-system"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/users\/561"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/comments?post=12283"}],"version-history":[{"count":7,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12283\/revisions"}],"predecessor-version":[{"id":12888,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12283\/revisions\/12888"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media\/12860"}],"wp:attachment":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media?parent=12283"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/categories?post=12283"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/tags?post=12283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}