Dariusz on Software Quality

11/11/2010

“git cherry-pick” for Perforce

Filed under: en — Tags: , , — dariusz.cieslak @

Cherry-picking is a technique of porting only selected commits from one branch to another. It’s directly supported in GIT by special command:

git cherry-pick <SHA-COMMIT-ID>

Also SVN has simple merge mode that supports selecting of single commit:

svn merge -c <REV-NO> <URL>

What about Perforce? After checking Perforce documentation for merging I hit the following syntax for selecting subset of changelists to merge:

(more…)

08/11/2010

Software Releases Using GIT

Filed under: en — Tags: , , — dariusz.cieslak @

Releasing Software is not just packing latest version to tarball and send to SFTP server. It requires preparation and some planning to be done properly. I’ll describe release procedure I applied on one of my latest projects. Supporting version control system is GIT.

The aims for releasing procedure designed:

  • allow for testing window before release date
  • have the possibility for examine released version to test for reported bugs
  • possibility to manage existing releases (hot-fixing critical bugs)

(more…)

Git: “pull –rebase” by default

Filed under: en — Tags: , — dariusz.cieslak @

GIT is a distributed version control system that allows to share codebase between developers. Born in Linux kernel world proved to be very useful for any programming task. “Distributed” means you can commit locally (during flight), syncing commits to some external repository is done in separate step (at the airport, waiting for luggage).

During watching my commit list using gitk I noticed many developers are accidentially merging their changes without so called “fast forward” (additional commit is created and the history is not linear). Why? The cause is that they are pulling changes from server AFTER local commit. A example commit tree taken from this worth-reading article:

(more…)

Powered by WordPress