<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Stark Signal &#187; Git</title>
	<atom:link href="http://starksignal.se/tag/git/feed" rel="self" type="application/rss+xml" />
	<link>http://starksignal.se</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 20 Apr 2012 21:30:06 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Få tillbaka gamla filer via Git</title>
		<link>http://starksignal.se/fa-tillbaka-gamla-filer-commits-git</link>
		<comments>http://starksignal.se/fa-tillbaka-gamla-filer-commits-git#comments</comments>
		<pubDate>Tue, 11 Jan 2011 14:29:34 +0000</pubDate>
		<dc:creator>Jonas Arnklint</dc:creator>
				<category><![CDATA[Programmering]]></category>
		<category><![CDATA[commit]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[show]]></category>

		<guid isPermaLink="false">http://starksignal.se/?p=567</guid>
		<description><![CDATA[Hur man enkelt får tillbaka gamla ändringar genom versionshanteraren Git.]]></description>
			<content:encoded><![CDATA[<div id="attachment_666" class="wp-caption alignright" style="width: 223px"><a href="http://starksignal.se/wp-content/uploads/2011/01/42578-ix27m-gonna-git-you-sucka_large.jpg"><img class="size-medium wp-image-666" title="42578-ix27m-gonna-git-you-sucka_large" src="http://starksignal.se/wp-content/uploads/2011/01/42578-ix27m-gonna-git-you-sucka_large-213x300.jpg" alt="I´m gonna git you sucka!" width="213" height="300" /></a><p class="wp-caption-text">I´m gonna git you sucka!</p></div>
<p>Ännu en &#8220;note to self&#8221;, kring en fråga som kommer upp ganska ofta nu förtiden. Hur får man tillbaka en gammal ändring i Git? Det händer trots allt att man gör misstag som commitas, vi är väl människor säg. Och Git är ju faktiskt ypperligt i dessa lägen.</p>
<pre><code>
git show treeish:file
</code></pre>
<p>Där treeish är en <a href="http://book.git-scm.com/4_git_treeishes.html">commit, branch eller tag</a> och file är sökvägen till filen du vill kolla närmare på.</p>
<p>Efter det kan man skriva över nuvarande fil med filen som den såg ut då:</p>
<pre><code>
git show treeish:file &gt; current_file
</code></pre>
<p>Kontrollera därefter korrigeringen:</p>
<pre><code>
git diff
</code></pre>
<p>Ok? Commita och pusha upp!</p>
]]></content:encoded>
			<wfw:commentRss>http://starksignal.se/fa-tillbaka-gamla-filer-commits-git/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installera Git på Ubuntu eller Debian (server)</title>
		<link>http://starksignal.se/installera-git-pa-ubuntu-eller-debian-server</link>
		<comments>http://starksignal.se/installera-git-pa-ubuntu-eller-debian-server#comments</comments>
		<pubDate>Sat, 19 Jul 2008 13:38:37 +0000</pubDate>
		<dc:creator>Jonas Arnklint</dc:creator>
				<category><![CDATA[Programmering]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[version control]]></category>
		<category><![CDATA[versionshantering]]></category>

		<guid isPermaLink="false">http://starksignal.se/index.php/2008/07/19/installera-git-pa-ubuntu-eller-debian-server/</guid>
		<description><![CDATA[Steg 1
Installera git på server och klient:

sudo apt-get install git-core
sudo apt-get update
sudo apt-get dist-upgrade

Steg 2
Installera gitosis på servern:
sudo apt-get install python-setuptools

mkdir ~/src
cd ~/src
git clone git://eagain.net/gitosis.git

Installera:

cd gitosis
sudo python setup.py install

Konfigurera:

sudo adduser \
--system \
--shell /bin/sh \
--gecos 'git version control' \
--group \
--disabled-password \
--home /home/git \
git

]]></description>
			<content:encoded><![CDATA[<p>Steg 1</p>
<p>Installera git på server och klient:<br />
<code><br />
sudo apt-get install git-core<br />
sudo apt-get update<br />
sudo apt-get dist-upgrade<br />
</code></p>
<p>Steg 2</p>
<p>Installera gitosis på servern:<br />
<code>sudo apt-get install python-setuptools</code></p>
<p><code><br />
mkdir ~/src<br />
cd ~/src<br />
git clone git://eagain.net/gitosis.git<br />
</code></p>
<p>Installera:<br />
<code><br />
cd gitosis<br />
sudo python setup.py install<br />
</code></p>
<p>Konfigurera:<br />
<code><br />
sudo adduser \<br />
--system \<br />
--shell /bin/sh \<br />
--gecos 'git version control' \<br />
--group \<br />
--disabled-password \<br />
--home /home/git \<br />
git<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://starksignal.se/installera-git-pa-ubuntu-eller-debian-server/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Note to self: Git Push</title>
		<link>http://starksignal.se/note-to-self-git-push</link>
		<comments>http://starksignal.se/note-to-self-git-push#comments</comments>
		<pubDate>Mon, 14 Jul 2008 12:21:03 +0000</pubDate>
		<dc:creator>Jonas Arnklint</dc:creator>
				<category><![CDATA[Programmering]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[push]]></category>

		<guid isPermaLink="false">http://starksignal.se/index.php/2008/07/14/note-to-self-git-push/</guid>
		<description><![CDATA[Jag tenderar att glömma kommandot för att pusha (lägga upp ändringar) i det avlägsna Git repositoryt jag sitter med.
git push git+ssh://user@doman.se/home/user/work/repo.git
Stupid me. Men Git rular fortfarande.
Klona (kopiera och tanka hem) ett projekt:
git clone git+ssh://....

Mer om Git.
]]></description>
			<content:encoded><![CDATA[<p>Jag tenderar att glömma kommandot för att pusha (lägga upp ändringar) i det avlägsna Git repositoryt jag sitter med.<br />
<code>git push git+ssh://user@doman.se/home/user/work/repo.git</code><br />
Stupid me. Men Git rular fortfarande.</p>
<p>Klona (kopiera och tanka hem) ett projekt:<br />
<code>git clone git+ssh://....<br />
</code></p>
<p><a href="http://starksignal.se/index.php/2008/06/26/ut-svn-in-med-git/">Mer om Git</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://starksignal.se/note-to-self-git-push/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ut SVN in med GIT</title>
		<link>http://starksignal.se/ut-svn-in-med-git</link>
		<comments>http://starksignal.se/ut-svn-in-med-git#comments</comments>
		<pubDate>Thu, 26 Jun 2008 12:51:31 +0000</pubDate>
		<dc:creator>Jonas Arnklint</dc:creator>
				<category><![CDATA[Programmering]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[kodhantering]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[versionshantering]]></category>

		<guid isPermaLink="false">http://starksignal.se/index.php/2008/06/06/ut-svn-in-med-git/</guid>
		<description><![CDATA[SVN
Jag har tidigare använt SVN till alla mina interna och några externa projekt. SVN hjälpte mig att hålla koll på ändringar och spara gamla versioner av den kod jag skrivit. Jag kan alltså gå tillbaka i tiden och aktivera en gammal version, såväl som  att bygga &#8220;förgreningar&#8221; till ett projekt och sedan samanfoga det [...]]]></description>
			<content:encoded><![CDATA[<h2>SVN</h2>
<p>Jag har tidigare använt SVN till alla mina interna och några externa projekt. SVN hjälpte mig att hålla koll på ändringar och spara gamla versioner av den kod jag skrivit. Jag kan alltså gå tillbaka i tiden och aktivera en gammal version, såväl som  att bygga &#8220;förgreningar&#8221; till ett projekt och sedan samanfoga det med den ursprungliga koden. SVN är alltså ett versionshanteringssystem (phew, långt ord). SVN ihop med Capistrano gör det dessutom busenkelt att lägga upp filer och deploya projekt. Nog om SVN, den gamle trotjänaren.</p>
<h2>GIT</h2>
<p>Jag tänkte nu gå över helt och hållet till GIT. En av anledningarna är att Ruby on Rails och andra projekt i Railsvärlden nu migreras till GIT och GitHUB. En annan god anledning är att GIT är bättre, snabbare och enklare att hantera.</p>
<p>GIT är:</p>
<ul>
<li>Öppen källkod</li>
<li>Skapat av Linus Thorvalds</li>
<li>Distribuerad versionshantering
<ul>
<li>Arkiv kan kommas åt via HTTP, SSH, FTP och nsync</li>
<li>Alla användare har varsin lokal kopia av ett arkiv vilket gör
<ul>
<li>Snabb åtkomst</li>
<li>Offline som online</li>
</ul>
</li>
</ul>
</li>
<li>Byggt med snabbhet som mål</li>
<li>Kapabelt att hantera stora projekt effektivt</li>
<li>Smart och sparar endast en enda .git fil i roten på ditt arkiv</li>
</ul>
<h2>Nu kör vi igång</h2>
<p>Börja med att ignorera filer du inte vill ska hamna i ditt arkiv genom att skapa filen <strong>.gitignore</strong> och ange exempelvis <strong>.DS_Store</strong> i den (ja, jag arbetar med Mac).</p>
<p>Skapa ett &#8220;arkiv&#8221;:</p>
<p><code>$ cd work/gittest/<br />
$ git init<br />
Initialized empty Git repository in .git/<br />
$ git add .<br />
$ git commit -m "Skapade ett repository<br />
</code></p>
<p>Du lägger till filer likt SVN:</p>
<p><code>$ git add fil1 fil2</code></p>
<p>Innan vi utför en commit, så kan vi se vad som kommer att läggas in i arkivet genom:<br />
<code><br />
git diff --cached</code></p>
<p>För att utföra en commit utan att behöva lägga till alla filer använder du:</p>
<p><code>git commit -a</code></p>
<p>Bra läsning:</p>
<p><a href="http://www.kernel.org/pub/software/scm/git/docs/repository-layout.html">http://www.kernel.org/pub/software/scm/git/docs/repository-layout.html</a></p>
<p><a rel="nofollow" href="http://groups.google.com/group/peepcode/browse_thread/thread/fe6f9c1fc9d6e725">http://groups.google.com/group/peepcode/browse_thread/thread/fe6f9c1fc9d6e725</a> &#8211; Ingorera .DS-store globalt. (Användbart för macanvändare!</p>
]]></content:encoded>
			<wfw:commentRss>http://starksignal.se/ut-svn-in-med-git/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

