All posts in “git”

Integrating TeamCity with Gerrit using PowerShell – Part 1

Introduction Right now, I’m in a project where we use Google’s gerrit for code review, and JetBrains Team City for CI. Both of these tools are good by themselves, but if they could combine their powers, we’d gain a lot in terms of reviewing capabilities, offloading the burden of verifying the build to Team City (compiling, running unit tests, anlysing code etc.) , while developers focus...

Automatic issue tags in Git commit messages

If you’re working on a project, chances are you’re also using some kind of issue tracker (like Jira or Trac). Most modern issue trackers allow integration with version control systems such as Git, so that it’s possible to view any commits attached to a certain issue. This works by the issue tracker parsing the commit message and looking for certain patterns corresponding to issues. Jira...

Configure Git, Like a Boss

I have just created a Git presentation. The presentation is named Git, Practical Tips, and it contains good practices that I have picked up during my four years as a Git user. The presentation consists of six parts, A quick introduction; History manipulation with merge, rebase and reset; Finding with Git; Configuration; Under the hood; and Interacting with Github. If you find this interesting...

A simple Continuous Integration and Deployment workflow with ASP.NET MVC, GitHub and Jenkins

This tutorial describes the process of setting up a simple ASP.NET MVC Web Application with Entity Framework and Code First Migrations and a workflow for developing, testing, staging and deploying the application with full automation using GitHub, Jenkins and IIS. Setting up a development machine First of all, make sure you have installed the following software: Git for Windows or GitHub for...

‘git add –p’ is awesome

It lets you stage parts of files for commit, let me show you how. Intro I cannot do one thing at a time, I try to, but never succeed. Especially when It comes to coding. All the time I find myself working on a feature, and when jumping around in the code base I find stuff that needs fixing, and I fix it. As a result of this, my commit messages often have a bullet list, or some “and”s in...

Continuous Deployment, Versioning and Git

So you have heard about continuous delivery and continuous deployment and you are eager to try, but your manager is afraid that you will lose traceability of the project. How can frequent updates of your binaries be tracked in a rapidly progressive environment, where every commit is a potential release? Artifact Version vs. Commit The traditional Java community way of version handling with a...

Finding with Git

Git is an amazing version control system that never loses anything, but sometimes it can be hard to find out where things are. Most of the time it is going to be git log that is our friend, but not all the time. Where is my file? Sometimes you know that you have a file in your repository but, you don't know exactly where it is. git ls-files is the...

Deploying a Clojure web app on Heroku

Heroku is a cloud application platform for Ruby/Rails and Node.js. However, the Cedar stack on Heroku makes it possible to deploy other types of applications. In this blog entry, I will first describe how to write a simple Clojure web app using the Ring library and the build tool Leiningen. Then I will show how to deploy this Clojure web app on Heroku, using nothing but Git. I will make a change...

Using Git with Subversion

I had the unfortunate experience of having to use Subversion again after using Git for a long time. It is amazing how fast I can forget. After renaming a directory at the prompt, and the agony that goes with it, I decided to switch back to Git. $ mv requester sampler # svn agony after renaming a directory $ svn st ? sampler ! requester ! requester.rb A sampler.rb The...

Under the Hood of 'git clone'

When you clone a git repository, everything is automatically setup to allow you to fetch, pull, push to and from the remote repository, origin. But what is really going on? git remote is configured with a few lines of configuration in the config file inside the .git/ directory. Here’s how it works: Create a new repository, called base, add a file to it, then...

Maven automatic build versioning and Git against Subversion

One of the nicest features of Git is that it's possible to use it locally against a Subversion server. For many this is a crucial selling point as it allows individual developers to take advantage of Git while not requiring that the entire project switches version control from Subversion. On your local Git repository you're then free to do as many branches as you like, or otherwise take advantage...