Everyone keeps saying “It’s simple you can just merge [Clearcase] main\LATEST into your private branch” but I’m pretty sure that almost no one understands what this involves. In fact several people have spoken to me with problems relating to just that. Hence this article!
Let’s take a typical scenario. Create a private branch and check in a couple of new versions. Wait for your feature to get the go-ahead for main\LATEST check in. Merge main latest into your private branch. What will you end up with? Clearcase will check out every single file and directory in your view that has changed (in main) since you created your private view. Clearcase will then merge all those files into your branch; for the most part this will be a trivial merge because the version on your private branch won’t have changed. If your code has been on a branch for a while there may be thousands of files across the VOB that have nothing to do with you that will be merged. Each merge will create merge lines from one branch to the other.
There is a simpler and quicker way which involves a lot less hassle (and scary merge lines):
- When you have finished your new feature and checked everything in on to your [private] branch.
- Make a note of the private branch’s name.
- Go into Clearcase explorer, right click on the view and select “Finish private branch".
- Clearcase pops up a merge box so select “Leave my changes on Private branch".
- Clearcase will kick off an “Update". If you’re on a dynamic view this will be instant whereas if you’re using a snapshot view then get yourself a coffee.
- When the update has finished, go back into Clearcase Explorer and right click on the view name and click “Set up private branch".
- The dialogue will pop up asking for a branch name, so enter the branch name you wrote down earlier.
- Clearcase will pop up a warning about reusing the branches so click “OK” to say that’s fine.
- Clearcase will kick off another update, so if you’re on a snapshot view you can go to the toilet to get rid of that coffee and dynamic view users can move to the next step. The update process will copy the items on your branch into the local view.
- You are now on your private branch again only the private branch timestamp has moved forward. All the files that have not been modified by you (i.e. don’t have a version on your branch) will be updated to the latest version. Your view will also contain the files on your branch.
- Now if you merge main latest into your private branch only the files that have changed on main latest AND your branch will be merged together.
- Now you are free to continue working with the latest code base. If you decide to check in your code (i.e. merge your private branch into main) then all the merges will be trivial.
Each year I organise a Beer and Guns day. We meet in the morning and drive to Bisley and take part in the NRA Open Day. After a day of shooting we leave, drive back to Reading and go to the CAMRA Real Ale and Cider Festival.
One particular year I delayed buying my tickets and they sold out. I am a member of the NRA [ NRA-UK not to be confused with the American NRA, which has done more damage to itself than any government could have done ] so I phoned the organiser and begged them to create an extra place for me. They said that’s a bit cheeky but as I was actively promoting the sport by getting friends to come, they would make an exception for me.
The Open Day registration page displays the number of tickets remaining so I thought I’d put some of my super skills together to produce a graph of how quickly the tickets are sold, so I and others won’t get caught out again.
5 May 2012 NRA Open Day 5 May 2012 Ticket Sales
It’ll be interesting to find out if the sales behaviour changes year-on-year… yay more graphs for another day.
Mail lists are called mail groups inside Lotus Notes.
- Go to Lotus Note desktop.
- Double click on MrN Address Book on MyServer (MrN = your name, MyServer = probably Local).
- From the tool bar, Action -> New -> Group.
- Fill in group name.
- Fill in Members.
- From the window tabs, click Save & Close.
Need help installing
Ninite: The Easiest, Fastest Way to Update or Install Software
Select a set of commonly used products and Ninite downloads and installs them with default configuration.
Spam Poison: Site that provides links that will redirect email harvesting bots to trap sites that will feed it with an almost infinite loop of dynamically generated fake email addresses, mostly on known spammer owned domains! This will render their harvested lists practically useless and of no commercial value.
Traceroute plotted on Google Maps.
Need parts building
Need help drawing
Need help configuring
Single Sign-on and the Corporate Directory - http://www.linuxjournal.com/article/8374
Need help with mind control
Need help creating a DSL
Need help writing code (sites that provide code samples)
Who is locking your file or why can’t I delete a file:
Lost source code and need to decompile a Java application:
I’ve been using Mantis for a couple of years. I run a small company and so have to be extremely flexible. As a result I need to tweak the database to do tasks that are not available using the Mantis front end.
The trouble with editing the bugs and bugnotes is that for each change you make an email notification gets sent to all the people “interested” in the bug. But if I’m correcting spelling mistakes or updating forgotten time tracking information then I don’t want them to be bombarded with emails. They barely read the normal ones!
In order to help with tweaking the MantisBT database I’ve written an interactive Python application.
The trouble with editing the database is that once you’ve done it, it’s not easy to un-doit. The MantisBT Database Tweaker asks you if you’re sure with a helpful message. If you say yes then the SQL command will be applied to the database. MantisBT Database Tweaker will also write out the SQL to put the data back into the database.
Quite often my customers will send me an email because they don’t have access to the Mantis server, so I have to cut and paste their text into a bugnote and then change the owner of the bugnote so that it doesn’t look like it came from me!
2012-04-18 MantisBT Database Tweaker v2.0
2012-03-24 MantisBT Database Tweaker v1.0