<br />
<b>Deprecated</b>:  The each() function is deprecated. This message will be suppressed on further calls in <b>/home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php</b> on line <b>456</b><br />
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.9.5">Jekyll</generator><link href="/feed.xml" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" /><updated>2024-07-26T01:32:36+00:00</updated><id>/feed.xml</id><title type="html">Your awesome title</title><subtitle>Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</subtitle><entry><title type="html">Welcome to Jekyll!</title><link href="/2024/07/26/welcome-to-jekyll/" rel="alternate" type="text/html" title="Welcome to Jekyll!" /><published>2024-07-26T01:01:52+00:00</published><updated>2024-07-26T01:01:52+00:00</updated><id>/2024/07/26/welcome-to-jekyll</id><content type="html" xml:base="/2024/07/26/welcome-to-jekyll/"><![CDATA[<p>You’ll find this post in your <code class="language-plaintext highlighter-rouge">_posts</code> directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run <code class="language-plaintext highlighter-rouge">jekyll serve</code>, which launches a web server and auto-regenerates your site when a file is updated.</p>

<p>Jekyll requires blog post files to be named according to the following format:</p>

<p><code class="language-plaintext highlighter-rouge">YEAR-MONTH-DAY-title.MARKUP</code></p>

<p>Where <code class="language-plaintext highlighter-rouge">YEAR</code> is a four-digit number, <code class="language-plaintext highlighter-rouge">MONTH</code> and <code class="language-plaintext highlighter-rouge">DAY</code> are both two-digit numbers, and <code class="language-plaintext highlighter-rouge">MARKUP</code> is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.</p>

<p>Jekyll also offers powerful support for code snippets:</p>

<figure class="highlight"><pre><code class="language-ruby" data-lang="ruby"><span class="k">def</span> <span class="nf">print_hi</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
  <span class="nb">puts</span> <span class="s2">"Hi, </span><span class="si">#{</span><span class="nb">name</span><span class="si">}</span><span class="s2">"</span>
<span class="k">end</span>
<span class="n">print_hi</span><span class="p">(</span><span class="s1">'Tom'</span><span class="p">)</span>
<span class="c1">#=&gt; prints 'Hi, Tom' to STDOUT.</span></code></pre></figure>

<p>Check out the <a href="https://jekyllrb.com/docs/home">Jekyll docs</a> for more info on how to get the most out of Jekyll. File all bugs/feature requests at <a href="https://github.com/jekyll/jekyll">Jekyll’s GitHub repo</a>. If you have questions, you can ask them on <a href="https://talk.jekyllrb.com/">Jekyll Talk</a>.</p>]]></content><author><name></name></author><category term="jekyll" /><category term="update" /><summary type="html"><![CDATA[You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site when a file is updated.]]></summary></entry><entry><title type="html">Porkepic Solutions: Software For Contractors</title><link href="/2011/04/23/porkepic-solutions-software-for-contractors/" rel="alternate" type="text/html" title="Porkepic Solutions: Software For Contractors" /><published>2011-04-23T22:49:22+00:00</published><updated>2011-04-23T22:49:22+00:00</updated><id>/2011/04/23/porkepic-solutions-software-for-contractors</id><content type="html" xml:base="/2011/04/23/porkepic-solutions-software-for-contractors/"><![CDATA[<p>Quick update on where I’m at:</p>

<ul>
  <li>I started my own software company in april 2010 called <a href="http://porkepic.com">Porkepic Solutions</a> (the name is a play on the french word for porcupine). We make software for contractors in the construction industry. (<a href="http://twitter.com/porkepic">twitter</a>) (<a href="http://blog.porkepic.com">blog</a>)</li>
  <li>Our first product is <a href="http://ccubeapp.com">C3 - a crm/project management solutions for contractors</a>. (<a href="http://twitter.com/ccubeapp">twitter</a>)</li>
  <li>We just launched our second product:<a href="http://ontakeoff.com"> ontakeoff - simple quote &amp; estimate, cost control and easy invoicing for busy contractors</a>. (<a href="http://twitter.com/ontakeoffapp">twitter</a>)</li>
</ul>

<p>You can follow me on:</p>

<ul>
  <li><a href="http://twitter.com/jfcouture">twitter</a></li>
  <li><a href="http://ca.linkedin.com/in/jfcouture">linkedin</a></li>
</ul>]]></content><author><name>jfcouture</name></author><category term="entrepreneur" /><summary type="html"><![CDATA[Quick update on where I’m at:]]></summary></entry><entry><title type="html">New Garden Gnome At Code Genome</title><link href="/2008/10/04/new-garden-gnome-at-code-genome/" rel="alternate" type="text/html" title="New Garden Gnome At Code Genome" /><published>2008-10-04T21:57:32+00:00</published><updated>2008-10-04T21:57:32+00:00</updated><id>/2008/10/04/new-garden-gnome-at-code-genome</id><content type="html" xml:base="/2008/10/04/new-garden-gnome-at-code-genome/"><![CDATA[<p>What do you call someone who works at Code Genome?</p>

<p><img src="/images/archive/garden_gnome.jpg" alt="Garden Gnomes" /></p>

<p>That’s right, a garden gnome. (Apparently, some British dude had trouble saying the name of our company.)</p>

<p>It is with great pleasure that I announce that a new gnome has joined the team: <a href="http://www.modelix.net/">Pierre Olivier Martel</a>. PO is our first rails garden gnome guru-to-be. Welcome aboard PO!</p>]]></content><author><name>jfcouture</name></author><category term="Rails" /><summary type="html"><![CDATA[What do you call someone who works at Code Genome?]]></summary></entry><entry><title type="html">Code Genome Plan For World Conquest: We’re Looking For Ruby On Rails Developers</title><link href="/2008/09/17/code-genome-plan-for-world-conquest-were-looking-for-ruby-on-rails-developers/" rel="alternate" type="text/html" title="Code Genome Plan For World Conquest: We’re Looking For Ruby On Rails Developers" /><published>2008-09-17T04:21:32+00:00</published><updated>2008-09-17T04:21:32+00:00</updated><id>/2008/09/17/code-genome-plan-for-world-conquest-were-looking-for-ruby-on-rails-developers</id><content type="html" xml:base="/2008/09/17/code-genome-plan-for-world-conquest-were-looking-for-ruby-on-rails-developers/"><![CDATA[<p>(company name) <a href="http://www.codegenome.com/">Code Genome</a>, based in (city name) Montreal, the world leading (whatever it is you do) Ruby On Rails consulting firm, is looking to hire (position name) a Ruby On Rails developer for its (adjective) star team.</p>

<p>(Mad Libs are are the ultimate tool to create a job posting.)</p>

<h3 id="ruby-on-rails-guru">Ruby on Rails Guru</h3>

<p>We are looking for a Ruby on Rails guru. You have a couple of projects under your belt (a black one). Everything you ever wrote ended up in a plugin. You’re just that good. You should be the one writing this job description and telling us what a real Rails guru is all about.</p>

<h3 id="ruby-on-rails-refugee">Ruby on Rails Refugee</h3>

<p>We are looking for a Ruby on Rails refugee. You have a couple of years of experience in web development in Java or .Net. One night, you built a small project in Rails, wanting to know what the hype was all about. It was love at first sight. Now, you loathe your day-time job and all the unnecessary complexity involved. It’s time for a change.</p>

<h3 id="ruby-on-rails-guru-to-be">Ruby on Rails Guru-to-be</h3>

<p>We are looking for a Ruby on Rails guru-to-be. You have built at least one small project in your spare time using Rails and fell in love. You are now aspiring to have an international career as the next rock star of ruby development. But you need someone to give you a chance.</p>

<p>For more information, visit <a href="http://jobs.codegenome.com/">http://jobs.codegenome.com</a></p>

<p>One more thing. The best part of this job is that you get to work with me, the only ruby witch doctor in Montreal. Oh, and if you feel guru is overused, you get to call yourself whatever you want: ninja, kung fu master, sith lord, drunken monkey cowboy of hell, papa smurf, or the ultimate, zombie ninja pirate. Nothing beats a zombie ninja pirate.</p>]]></content><author><name>jfcouture</name></author><category term="Rails" /><category term="Ruby" /><summary type="html"><![CDATA[(company name) Code Genome, based in (city name) Montreal, the world leading (whatever it is you do) Ruby On Rails consulting firm, is looking to hire (position name) a Ruby On Rails developer for its (adjective) star team.]]></summary></entry><entry><title type="html">Github Launches With Cool Visualization Tool</title><link href="/2008/04/11/github-launches-with-cool-visualization-tool/" rel="alternate" type="text/html" title="Github Launches With Cool Visualization Tool" /><published>2008-04-11T01:49:51+00:00</published><updated>2008-04-11T01:49:51+00:00</updated><id>/2008/04/11/github-launches-with-cool-visualization-tool</id><content type="html" xml:base="/2008/04/11/github-launches-with-cool-visualization-tool/"><![CDATA[<p>I didn’t think I would blog about the launch of <a href="http://github.com/">github</a>, because I thought it was pretty meh. Sure it’s nice to put your projects on it and be able to fork other projects, but it was still pretty useless as there was no way of visualizing all the branches (<a href="http://jfcouture.com/2008/04/02/rails-moving-to-git-how-to-really-understand-and-master-git/">git is all about the commit graph</a>).</p>

<p>Well they just launched the <a href="http://github.com/blog/39-say-hello-to-the-network-graph-visualizer">Network Graph Visualizer</a> and it rocks! Now you can quickly see the branches/forks and know if they are active or not. Also they added <a href="http://github.com/blog/42-commit-comments">commit comments</a>.</p>

<p>So they fixed their most important flaw and they add features that should make collaboration easier. This makes me really hopeful for github’s future. Github is the place to be for open source projects!</p>]]></content><author><name>jfcouture</name></author><category term="git" /><summary type="html"><![CDATA[I didn’t think I would blog about the launch of github, because I thought it was pretty meh. Sure it’s nice to put your projects on it and be able to fork other projects, but it was still pretty useless as there was no way of visualizing all the branches (git is all about the commit graph).]]></summary></entry><entry><title type="html">It’s Time To Revisit Your Assumptions About VCS</title><link href="/2008/04/08/its-time-to-revisit-your-assumptions-about-vcs/" rel="alternate" type="text/html" title="It’s Time To Revisit Your Assumptions About VCS" /><published>2008-04-08T02:14:48+00:00</published><updated>2008-04-08T02:14:48+00:00</updated><id>/2008/04/08/its-time-to-revisit-your-assumptions-about-vcs</id><content type="html" xml:base="/2008/04/08/its-time-to-revisit-your-assumptions-about-vcs/"><![CDATA[<p>You might have heard about distributed version control systems recently, for example <a href="http://git.or.cz/">git</a>. There are a lot of articles popping up left and right about DVCS. What I find interesting about this is that version control has again become something to talk about. This is very healthy as version control is such an important tool for software developers.</p>

<p>When I started using using subversion five years ago, version control faded to the background. Subversion greatest strength is its simplicity. After a while, you get used to its quirks and it just works. Sure, some operations are painful, like merging back a branch, but you learn how to do it (and try to minimize to number of times you have to do it).</p>

<p>But five years is a pretty long time in computing terms. Maybe something better has come along. Maybe the reasons you chose something five years ago don’t hold anymore. This applies to everything. Sometimes you come across a company policy that looks stupid. At the time the decision was taken, it might actually have made sense. But things changed (as they tend to) and nobody took the time to check if the assumptions used to make the decision were still true today.</p>

<p>I suggest you use all the hype around git, and the discussions it generates, to revisit, to question all your assumptions about what is version control and what it can do for you. Is version control about sharing code with other developers and having some kind of history and backup? That’s something that, yes, it provides, but it can do so much more.</p>

<p>Have you ever used a VCS that required you to lock a file before editing, to avoid conflicts if two developers edited the file at the same time? If you’ve used any system that doesn’t require it, you just know that it’s a not a real problem. However, how do you explain it to the developer that is convinced that it is a very real problem? That’s the problem I have with git right now after using it for six months. I don’t how to convince people to try it when they raise objections. I can only say that it’s awesome and that going back to subversion from git would be more painful for me than going back to locking file from subversion.</p>]]></content><author><name>jfcouture</name></author><category term="git" /><summary type="html"><![CDATA[You might have heard about distributed version control systems recently, for example git. There are a lot of articles popping up left and right about DVCS. What I find interesting about this is that version control has again become something to talk about. This is very healthy as version control is such an important tool for software developers.]]></summary></entry><entry><title type="html">Rails Moving To Git: How To Really Understand And Master Git</title><link href="/2008/04/03/rails-moving-to-git-how-to-really-understand-and-master-git/" rel="alternate" type="text/html" title="Rails Moving To Git: How To Really Understand And Master Git" /><published>2008-04-03T02:15:25+00:00</published><updated>2008-04-03T02:15:25+00:00</updated><id>/2008/04/03/rails-moving-to-git-how-to-really-understand-and-master-git</id><content type="html" xml:base="/2008/04/03/rails-moving-to-git-how-to-really-understand-and-master-git/"><![CDATA[<p>It appears that <a href="http://weblog.rubyonrails.com/2008/4/2/rails-is-moving-from-svn-to-git">Rails will switch to git</a> real soon. Nice! However, it means confusion for developers used to svn. You might find a few tips on this blog to help you get started, but right now I want to give you the secret to git mastery:</p>

<p>You need to think in terms of how you want to modify your graph. My what you say?!? A git repository is a <a href="http://en.wikipedia.org/wiki/Directed_acyclic_graph">directed acyclic graph</a> of commits (the nodes). Huh?? Read this article: <a href="http://eagain.net/articles/git-for-computer-scientists/">Git for Computer Scientists</a>. Do not continue reading before you understand that article. Everything falls into place when you understand that all git commands manipulate these four basic structures: blobs, trees, commits and tags.</p>

<p>From now on, before typing a git command in the shell, try to picture in your head how you want your repository to look after the command. Your best friend is gitk for visualization (use the –all option to see all branches). Run it before and after each command you do with git. Here is what you should be thinking when using these commands:</p>

<ul>
  <li>
    <p>git commit: I am creating a new node in my graph, linked to the current node.</p>
  </li>
  <li>
    <p>git branch branch_name: I am tagging a node with a name.</p>
  </li>
  <li>
    <p>git merge: I am creating a new node that will link two parents nodes, one for each branch I am merging (could be more than two).</p>
  </li>
  <li>
    <p>git fetch remote_repos: I am adding all the nodes from a distant repository to my graph.</p>
  </li>
  <li>
    <p>git push: I am sending all the nodes I created to a distant repository.</p>
  </li>
  <li>
    <p>git pull: I want to fetch all remote nodes AND merge.</p>
  </li>
</ul>

<p>Once you think like this, “advanced” git stuff becomes trivial. For example, this morning one coworker realized that his last three commits actually belonged to a branch. Try to visualize the solution. When you think about it, nothing has to change about the actual graph, just which nodes the tag (the branch name) needs to point at. So you just create a branch where you are, on the last commit, and then you can use the reset command to move back the other branch to the correct commit.</p>

<p>That’s the core of git. There are maybe two other things to worry about when using git. The first is the <a href="http://www.kernel.org/pub/software/scm/git/docs/tutorial-2.html">index</a>, which is sort of a staging area where you prepare your commits. The other thing is the way git configuration works and the way it names and references branches (and the special reference HEAD) and remote repositories. Check out the <a href="http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#understanding-commits">git user manual</a>.</p>]]></content><author><name>jfcouture</name></author><category term="git" /><category term="Rails" /><summary type="html"><![CDATA[It appears that Rails will switch to git real soon. Nice! However, it means confusion for developers used to svn. You might find a few tips on this blog to help you get started, but right now I want to give you the secret to git mastery:]]></summary></entry><entry><title type="html">Still Not On Git? Random Links Of The Week</title><link href="/2008/02/03/still-not-on-git-random-links-of-the-week/" rel="alternate" type="text/html" title="Still Not On Git? Random Links Of The Week" /><published>2008-02-03T20:03:45+00:00</published><updated>2008-02-03T20:03:45+00:00</updated><id>/2008/02/03/still-not-on-git-random-links-of-the-week</id><content type="html" xml:base="/2008/02/03/still-not-on-git-random-links-of-the-week/"><![CDATA[<p>I’m beginning to wonder if I wasn’t a bit pessimistic when I said <a href="http://jfcouture.com/2007/12/09/80-of-rails-developers-to-switch-to-git-before-christmas-08-how-to-get-ahead-and-start-now/">80% of rails developper to switch to git before christmas ‘08</a>.  My own unscientific measurement for January show more than 50% of new projects are using git. If you still haven’t installed git and are looking for a reason, here’s one: <a href="http://drnicwilliams.com/">Dr Nic</a> is the new maintainer of the <a href="http://drnicwilliams.com/2008/01/31/get-ready-for-the-textmate-trundle-to-rails-20-bundle/">Rails Textmate Bundle</a> and you’ll need git to get it. It includes new helpers specific to Rails 2.0. Speaking of Textmate, it looks like someone picked up the development of <a href="http://gitorious.org/projects/git-tmbundle/repos/mainline/browse">the git bundle</a>. January also saw the release of <a href="http://macournoyer.wordpress.com/category/thin/">thin</a> and the next version of <a href="http://github.com/wycats/merb-core/tree/master">merb</a> is now also on git. Seriously, I don’t think I need to keep pushing people to git anymore. The momentum is too strong and you will have to use git in the very near future. If you still need more convincing, here are a couple of very interesting links:</p>

<ul>
  <li>
    <p>James Golick explains <a href="http://jamesgolick.com/2008/1/21/why-distributed-version-control-matters-to-you-today">why distributed version control matters to you</a>. James writes very well and it should make you understand why you should release your next rails plugin with git.</p>
  </li>
  <li>
    <p>This guy is <a href="http://www.danielfischer.com/2008/02/01/all-that-git-talk-in-the-rails-world-what-gives/">confused about why distributed version</a> rocks so much. He first needs to read James’ article. Then you guys with the same feelings toward git need to read the comments.</p>
  </li>
  <li>
    <p>Dr Nic <a href="http://drnicwilliams.com/2008/02/03/using-git-within-a-team/">tries to explain git</a>, if you want to understand how to contibute to an open source project.</p>
  </li>
</ul>

<p>Hopefully all the links provided should help you understand git from different perspectives. One last goodie for the week: Carl Mercier released a <a href="http://blog.carlmercier.com/2008/01/25/no-nonsense-git-part-1-git-remote-branch/">small script to help work with remote branches</a>. If you want to script common git tasks in ruby, take a look at <a href="http://www.jointheconversation.org/rubygit/">Ruby/Git</a>.</p>]]></content><author><name>jfcouture</name></author><category term="git" /><category term="Ruby" /><summary type="html"><![CDATA[I’m beginning to wonder if I wasn’t a bit pessimistic when I said 80% of rails developper to switch to git before christmas ‘08. My own unscientific measurement for January show more than 50% of new projects are using git. If you still haven’t installed git and are looking for a reason, here’s one: Dr Nic is the new maintainer of the Rails Textmate Bundle and you’ll need git to get it. It includes new helpers specific to Rails 2.0. Speaking of Textmate, it looks like someone picked up the development of the git bundle. January also saw the release of thin and the next version of merb is now also on git. Seriously, I don’t think I need to keep pushing people to git anymore. The momentum is too strong and you will have to use git in the very near future. If you still need more convincing, here are a couple of very interesting links:]]></summary></entry><entry><title type="html">How To Set Up A Git Server</title><link href="/2008/01/20/how-to-set-up-a-git-server/" rel="alternate" type="text/html" title="How To Set Up A Git Server" /><published>2008-01-20T21:44:45+00:00</published><updated>2008-01-20T21:44:45+00:00</updated><id>/2008/01/20/how-to-set-up-a-git-server</id><content type="html" xml:base="/2008/01/20/how-to-set-up-a-git-server/"><![CDATA[<p>Git does not require a special “server” to run. For example, if you are on a local network, you can just put the repository on a shared network drive. Git does not handle the security. You configure the read/write access on the folder. I’m not an expert in system administration so I’m going to suggest some options and provide links that I found helpful:</p>

<ul>
  <li>
    <p><a href="http://www.openssh.com/">Ssh</a> is you friend for security. If you do not want to provide shell access to everyone, you can setup <a href="http://eagain.net/blog/2007/03/22/howto-host-git.html">one git user and use ssh keys</a> to provide access. If you go that route, take a look at <a href="http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way">gitosis</a>, which is a bunch of python scripts that automates part of administering that kind of setup. Gitosis gives you a git repository to configure access and projects. It’s very nice.</p>
  </li>
  <li>
    <p>Another option is <a href="http://www.kernel.org/pub/software/scm/git/docs/howto/setup-git-server-over-http.txt">through http</a>. You need webdav for that.</p>
  </li>
  <li>
    <p><a href="http://www.kernel.org/pub/software/scm/git/docs/git-daemon.html">Git daemon</a> comes with git and is perfect if you only need to quickly give public read access.</p>
  </li>
  <li>
    <p>There are couple of git hosting site that are popping up. Check out <a href="http://repo.or.cz/">repo.or.cz</a> and <a href="http://github.com/">Github</a> (invitation only for now but has a sexy look).</p>
  </li>
</ul>]]></content><author><name>jfcouture</name></author><category term="git" /><summary type="html"><![CDATA[Git does not require a special “server” to run. For example, if you are on a local network, you can just put the repository on a shared network drive. Git does not handle the security. You configure the read/write access on the folder. I’m not an expert in system administration so I’m going to suggest some options and provide links that I found helpful:]]></summary></entry><entry><title type="html">Montreal On Rails, January Edition</title><link href="/2008/01/17/montreal-on-rails-january-edition/" rel="alternate" type="text/html" title="Montreal On Rails, January Edition" /><published>2008-01-17T02:48:59+00:00</published><updated>2008-01-17T02:48:59+00:00</updated><id>/2008/01/17/montreal-on-rails-january-edition</id><content type="html" xml:base="/2008/01/17/montreal-on-rails-january-edition/"><![CDATA[<p>Last night I presented <a href="http://git.or.cz/">git</a> at <a href="http://www.montrealonrails.com/2008/01/15/followup-on-tonights-event/">Montreal On Rails</a> and I think it went pretty well. I might have forgotten a few things I wanted to say, but I got quite enough question about other aspects of git to fill an hour, aspects that I didn’t expect to be able to squeeze in. Although git is a very different beast than subversion, I feel like most people understood what it is all about. We have some very smart people here in Montreal, and it sure does not look like a ghetto. ;)</p>

<p>Now let me remind you of your homework for the week (it leads toward the path to git enlightenment):</p>

<ul>
  <li>
    <p>Listen to Linus Torvalds <a href="http://youtube.com/watch?v=4XpnKHJAok8">git talk at google</a>. It really helps understanding the design of git.</p>
  </li>
  <li>
    <p><a href="http://jfcouture.com/2007/12/16/installing-git-on-mac-os-x/">Install git.</a></p>
  </li>
  <li>
    <p>If you are currently using svn, see <a href="http://jfcouture.com/2007/12/12/the-guerilla-guide-to-git-how-to-start-using-git-even-if-your-team-is-on-svn/">my guide</a> on how to start using git while keeping a central svn repository.</p>
  </li>
  <li>
    <p>Explore <a href="http://www.codinghorror.com/blog/archives/000968.html">parallel universes with branches</a>. Develop a new feature in a branch. Try out a plugin in a branch. Have a branch with rails edge. Do some crazy experimental refactoring in a branch, including renaming files (yes! git will correctly merge).</p>
  </li>
  <li>
    <p>Play with git. Set up local “remote” repository to experience what distributed version control is all about. Try out strange branching scenario just to see how git will handle it.</p>
  </li>
  <li>
    <p>Read the <a href="http://www.kernel.org/pub/software/scm/git/docs/">documentation</a>. See if you can find how to: commit only part of file, send your last 3 commit to another branch, change your last commit (there are 2 ways actually).</p>
  </li>
</ul>

<p>I got carried away there. Git rocks.</p>]]></content><author><name>jfcouture</name></author><category term="git" /><category term="montreal" /><category term="social" /><summary type="html"><![CDATA[Last night I presented git at Montreal On Rails and I think it went pretty well. I might have forgotten a few things I wanted to say, but I got quite enough question about other aspects of git to fill an hour, aspects that I didn’t expect to be able to squeeze in. Although git is a very different beast than subversion, I feel like most people understood what it is all about. We have some very smart people here in Montreal, and it sure does not look like a ghetto. ;)]]></summary></entry></feed>