GitHub pull requests as seen by GIT

First off, some links to github documentation:

For just working with pull requests and even manually fetching / merging pull requests locally this information is more than enough. I found that by adding a new refspec, my branches are getting polluted with a looooong list of pull requests for certain projects. I would rather have a simple quick execute-once way of doing the same thing.

An extremely simple way is by adding a new alias:

git config alias.fpr '!sh -c "git fetch origin pull/${1}/head:pr/${1}" -'

This allows you to use git fpr 696 to pull in #696. Mind you, the remote is hardcoded to ‘origin‘ here.

In some cases, I’m really inpatient towards pull requests on upstream repositories and I want to merge them in my local repository more easily.
I created the following script for just that: git-merge-pr.sh.

A quick example:

$ ./git-merge-pr.sh 696
$ git log -n1
commit c0f62a0b1ed09ce928d35a90854a1eb2c2ac6d10
Merge: 1d837ed 54988e1
Author: Jan Vansteenkiste 
Date:   Tue May 6 06:48:43 2014 +0200

    Merged pull request: #696: Bugfix/debian control file permissions
    
    See jordansissel/fpm#696 for more information
    
    * pr/696:
      Ignore lsb init scripts warning since we are not providing a proper init script for testing
      Feeling brave, enable lintian for travis
      Fix file permissions on deb control files
    
    Conflicts:
    	.travis.yml

Instant Messaging @ Work. Do / don’t

If you, like me, use instant messaging a lot to contact colleagues, you will probably recognize these kind of conversations. The great thing about using something text based is that you can still keep working on other stuff. I tend to have plenty terminals open and using a IM allows me to ‘not sit around waiting’ until the other party replies. You can argue that giving somebody a call is a lot faster, but I’ll be losing focus on the conversation anyhow as long as I have a screen in front of me. Thats bad for both of us.

This is a common conversation that sometimes annoys me. Especially if you are the third person or so who initiates it.

Somebody: Hi!
Me: Hi
Somebody: Good morning
Me: ‘Mornin
Somebody: How are you doing?
Me: Fine, you?
Somebody: Ok.
Somebody: Can I ask you something?
Somebody: Or is this a bad time?
Me: Shoot.
Somebody: …. <Question follows>

If you are like me, this is not the kind of conversation I want to have with everybody that needs something.
The following example is how most conversations go with the colleagues in the sysadmins team:

Somebody: ping
Me: pong
Somebody: …. <Question follows>

As you can see, the amount of interrupts is reduced dramatically. “But that’s not very friendly” you say? No need for, I know you are a nice dude and even if you are not, we are working together, right?

So, for all you “friendly” people out there on the work-floor: One rule to live by: Don’t ask to ask, just ask! Keep the friendly talk for the coffee machine which we will both be using frequently anyhow.

Puppet modules and using dot graphs (both are unrelated but related to each other)

Puppet modules…  How I feel about them in a dot file:

digraph PuppetModules {
  node [
    fontname = "Bitstream Vera Sans"
    fontsize = 10
    shape    = "record"
  ]
  edge [
    fontname = "Bitstream Vera Sans"
    fontsize = 10
  ]
  question [label="Do I need to edit a file in your module for changing settings?", shape="oval"]
  ok  [label="Great.", shape="oval"]
  bah [label="You are doing it WRONG!", shape="oval"]

  question -> ok [label="No"]
  question -> bah [label="Yes"]
}

Read on if you want a rendered version.
(more…)

Hello world!

My new wordpress installation! I have yet to figure out wether or not to import my old blog entries. I don’t feel much like it for now, but I might change my mind later. For now, it’s going to be empty! (unless I feel like blogging).

Some info on the setup? I’m using wordpress svn with some git-svn magic to keep my code in version control. Using git-svn also solved my biggest hastle I used to have that I couldn’t easily mix a wordpress installation in my document root with existing files and/or folders (error pages, some stats folder, various other thingies).

The wordpress plugins I use are also managed in git, but not with git-svn. I’m unsure if its possible to use git-svn with git-submodules. And even if it is, it may be too much of a command mess to update them all. Instead, I’ll just write a little script I can run whenever wordpress complains about updating plugins that will loop over them and run a svn update (with a git commit with a nicely predefined commit message.

Code will follow!