Executing multiple commands with sudo

Some commands won’t execute under sudo (e.g. source on Ubuntu), so to execute these commands, or to execute many commands, use ‘sudo -s’ to get a shell session as the root user, then everything you execute after that point until you exit will be under sudo.

Would Jobs have released the iPhone 5?

Given the amount of issues that new iPhone 5 users are having with their new phones, I don’t believe Jobs would have let the new iPhone in it’s current state go out to stores. It’s just not ready. Sure, all new products have teething issues, but the iPhone 5 right now seems to have more than it’s share.

The new Apple Maps app is clearly not ready for primetime. Not only should it have a beta banner across the screen, it should also have a warning flashing on the screen every time you open the app: “Caution! Do not use for real world navigation! Maps shown by this application are for entertainment purposes only!”.

The Amazing iOS 6 Maps has some of the best screenshots so far. Some are just incredible, they’re almost art forms in their own right. Someone could had painted these scenes and put them on display in a gallery… and made good money from them too. Here’s some of my favorites:

It’s almost too easy to make fun of the hilarious screenshots right now because there’s just too many funny examples.

And not too mention the list of other issues that are coming up – CNET has a list of reported issues right now, including:

Needless to say, I’m pretty sure Jobs would not have let this product go out the door. Sure, the issue will get resolved in time, but this product is not currently worthy of it’s Apple logo.

Removing commit history in Git

To avoid committing files to version control you can add their names to a .gitignore file, and to committing local changes to an already version controlled file you can use the git command described in my previous post here.

How can you remove history if you’ve already committed a file? For example, let’s say you have a properties file with some environment specific values that you’ve committed, but you want to remove the history of those committed values?

This FAQ walks through the steps needed, which in summary are:

    • Remove all history from the repo:
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch path/to/your_file_name' 
  --prune-empty --tag-name-filter cat -- --all
  • on Windows, replace the ‘ with “
  • add the filename to .gitignore if you want to avoid future commits (and commit .gitignore: git commit -m “updated gitignore” )
  • push changes back to your remotes: git push remotename master –force

If you need to make local changes to a tracked file and then not commit them in future commit, use the ‘git update-index -skip-worktree’ as described here.