The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,862 other subscribers

Archive for September, 2012

“tfpt treeclean /exclude:*.suo,*.user” is what I use most (and recommend this thread: Does any tool exist to help Sync a directory with TFS? – Stack Overflow)

Posted by jpluimers on 2012/09/20

This post describes the TFS workspace cleanup features Treeclean and Scorch.

Both are not in the Visual Studio UI nor TFS tool, but are available form the ftpt command from the optional Team Foundation Power Tools package.

The main reason you need these two features is that TFS does not always clean up after it self when you perform get latest. For instance renamed directories, as well as bin and obj directories are not automatically removed.

The tfpt command I most often use this this one:

tfpt treeclean /exclude:*.suo,*.user

This deletes files from your local TFS workspace directory tree that are not in the source control system, but skips the *.suo and *.user files.

Tfpt also allows you to scorch files from your TFS.

So my second most used tfpt command is scorch in either of the two below forms:

tfpt scorch /recursive /diff
tfpt scorch /recursive /diff /exclude:*.suo,*.user

The first form is for the automatic build environment, the second for my normal development workspace.

Below is the explanation of treeclean and scorch.

First some other great commands from this StackOverflow answer by Martin Woodward:

Not quite, however you might want to download the TFS Power Tools and check out the command line utility tfpt.exe.

The “tfpt online” and “tfpt treeclean” might be most useful to you when working outside of an integrated TFS client. tfpt online will look for files in your local directory that are not under version control, treeclean will show you files in your local directory that are not under version control so that you can remove then if they are not required.

Scorch versus Treeclean

Scorch does more than Treeclean.

I use Treeclean for 90% of my normal workspace work, Scorch (with exclude) for about 10% of the time in my regular workspace.
For my CCnet build integration workspace, I only use Scorch (without exclude).

Treeclean just cleans the tree of stuff that is not in TFS:

B:\MasterWorkingDir>tfpt treeclean /?
tfpt treeclean - Delete files and folders not under version control

Usage: tfpt treeclean [/exclude:filespec1,filespec2,...] [filespec...]
[/recursive] [/batchsize:num] [/noprompt [/preview]]

Scorch does more work: at the end, both source control and the local disk situation are identical.

B:\MasterWorkingDir>tfpt scorch /?
tfpt scorch - Ensure source control and the local disk are identical

Your local disk will be scanned for:
 (1) items that are not in source control
 (2) items which are different on disk from the workspace version
 (3) items which are in the workspace but are missing on disk
Items not in source control will be deleted from disk, just as with the
 tfpt treeclean command. Items determined to be different on disk from the
 workspace version will be redownloaded from the server. Items missing on
 disk will also be redownloaded. Items with pending changes are exempted.

By default, items deleted from your local disk (#3 above) will not be
scanned for, and local items are determined to be identical/different from
the workspace version *solely by examining the read-only bit on the file*.

To redownload items deleted from your local disk (#3 above), supply the
/deletes option. To detect items which are different from the workspace
version but still have their read-only bit set (+R), supply the /diff option.
When using either or both of these options, tfpt scorch runs more slowly.

Usage: tfpt scorch [/exclude:filespec1,filespec2,...] [filespec...]
[/recursive] [/batchsize:num] [/noprompt [/preview]]
[/deletes] [/diff]

The commandline options are also different.

Scorch has these extra when compared to Treeclean:

/batchsize:num Set the batch size for server calls (default 500)
/deletes Detect and replace items missing from the local disk
/diff Use MD5 hashes to compare items with source control

Treeclean can have these options:

/noprompt Operate in command-line mode only
/exclude:filespec[,..] Files and directories matching a filespec in this list
are excluded from processing
/preview Do not make changes; only list the potential actions
/recursive Switch from one level of recursion to full recursion
/batchsize:num Set the batch size for server calls (default 500)
filespec... Only files and directories matching these filespecs
are processed

Scorch can have these options:

/noprompt Operate in command-line mode only
/exclude:filespec[,..] Files and directories matching a filespec in this list
are excluded from processing
/preview Do not make changes; only list the potential actions
/recursive Switch from one level of recursion to full recursion
/batchsize:num Set the batch size for server calls (default 500)
filespec... Only files and directories matching these filespecs
are processed

–jeroen

via:

Posted in CodePlex, Development, Software Development, Source Code Management, TFS (Team Foundation System), Visual Studio 11, Visual Studio 2002, Visual Studio 2003, Visual Studio 2005, Visual Studio 2008, Visual Studio 2010, Visual Studio and tools | 4 Comments »

My Delphi conferences this fall: DelphiTage.de, ITDevCon.it, no EKON (entwickler-konferenz.de)

Posted by jpluimers on 2012/09/19

Nicolette and me on the Antarctic peninsulaWhile scheduling this year’s projects, it was clear that it would become impossible to have the summer holiday in the summer (last year was also outside, as we fulfilled Nicolette’s dream: visit the Antarctic region).

So we moved this year’s holiday to early November, hoping that would be outside the Fall conference season.

Alas, EKON (Entwickler-Konferenz.de), this year in Düsseldorf, Germany, moved themselves to November, so this will be the first EKON ever that I won’t attend (out of 3 or 4 people that never missed one). Sorry guys I will miss the great speakers, sessions and workshops (:

I am going to speak on two other European Delphi conferences though:

I’m really looking forward meeting the attendees, speakers and organizations there. Conferences are always a lot of fun and a great way for me of learning new things.

--jeroen

via:

Posted in About, Antarctic, Conferences, Delphi, Delphi XE2, Delphi XE3, Delphi-Tage.de, Development, EKON, Event, ITDevCon, Personal, Software Development, Travel | Tagged: , , , , , , , , , , , , , , , , , , , , | 2 Comments »

Everything’s broken and nobody’s upset – Scott Hanselman

Posted by jpluimers on 2012/09/19

Great post with some exceptionally well written comments on the status quo: Everything’s broken and nobody’s upset – Scott Hanselman.

–jeroen

Posted in Development, Software Development | Leave a Comment »

xkcd: Click and Drag

Posted by jpluimers on 2012/09/19

xkcd: Click and Drag: a brilliant piece of JavaScript with images at http://imgs.xkcd.com/clickdrag

–jeroen

 

Posted in Development, JavaScript/ECMAScript, LifeHacker, Power User, Scripting, Software Development | Leave a Comment »

:-) and :-( turned 30, thanks Scott Fahlman!

Posted by jpluimers on 2012/09/19

Today they :-) and :-( turned 30. Happy birthday!

The first use was attributed to Scott Fahlman.

Over the last few years, I switched to reverse smileys as too much software tries to graphicalize the regular ones.

–jeroen

via: Scott Fahlman – Wikipedia, the free encyclopedia.

Posted in History, Opinions | 1 Comment »

git-tfs

Posted by jpluimers on 2012/09/19

Interesting:

git-tfs is a two-way bridge between TFS and git, similar to git-svn.

Need to check out if it is more like the SVNBridge wrapper that wraps SVN around TFS on either the server or the client, or like git-svn which wraps git around SVN only around the client.

–jeroen

via: git-tfs.

Posted in Development, DVCS - Distributed Version Control, git, Software Development, Source Code Management, Subversion/SVN, TFS (Team Foundation System) | Leave a Comment »

Firebird News » Firebird 2.5.2 Release Candidate is available

Posted by jpluimers on 2012/09/18

Great: Firebird News » Firebird 2.5.2 Release Candidate is available.

Posted in Database Development, Development, Firebird, Software Development | Leave a Comment »

On my research list: AsyncBridge (adds C#5 async features for .NET 4 projects)

Posted by jpluimers on 2012/09/18

Having a done a lot of Async stuff in the .NET 2, 3.x and 4 era with multimedia applications (oh, the days of SynchronizationContext), this project seems very interesting:

AsyncBridge

Adds the new C#5 async features for .NET 4 projects

Download this project as a .zip file
Download this project as a tar.gz file

What does it do?

AsyncBridge lets you use the VS 11 C#5 compiler to write code that uses the async and await keywords, but to target .NET 4.0. It was published by Daniel Grunwald (from SharpDevelop) here.

As an extra, I’ve thrown in the new C#5 caller info attributes, which lets you automatically add the method name, line number or file path to your code.

Authors and Contributors

Daniel Grunwald (@dgrunwald) – Original code.

Omer Mor (@OmerMor) – Turned it into a full blown github repo with the complimentary nuget.

Alex Davies (@alexdavies74) – Wrote the blog post that inspired this, and is actively improving the code.

–jeroen

via: AsyncBridge.

Posted in .NET, .NET 4.5, C#, C# 4.0, C# 5.0, Development, Software Development | Leave a Comment »

Link update because of rot (*nix – Mastering the VI editor)

Posted by jpluimers on 2012/09/17

Link rot stroke again: New link for Mastering the VI editor.

These are useful too:

–jeroen

via *nix – Mastering the VI editor « The Wiert Corner – irregular stream of Wiert stuff.

Posted in *nix, Cygwin, Endian, Internet, link rot, Linux, Power User, vi, WWW - the World Wide Web of information | Leave a Comment »

6 Excel keyboard shortcut pairs I didn’t know yet: select row/select column and insert current date/time(via: The Best Shortcut Keys in Microsoft Excel)

Posted by jpluimers on 2012/09/17

Learned a few Excel keyboard shortcut pairs today:

Shortcut Action
Ctrl+Spacebar Select columns
Shift+Spacebar Select rows
Ctrl+; Current date
Ctrl+Shift+: Current time
Ctrl+Shift+2 Format current cell as default date
Ctrl+Shift+3 Format current cell as default time

–jeroen

via:

Posted in Excel, Keyboards and Keyboard Shortcuts, Office, Power User | Leave a Comment »