<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MaxoTech Blog &#187; Version Control</title>
	<atom:link href="http://maxotek.net/blog/category/version-control/feed" rel="self" type="application/rss+xml" />
	<link>http://maxotek.net/blog</link>
	<description>Technology Blog</description>
	<lastBuildDate>Wed, 29 Jun 2011 07:44:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Reflector to the Rescue</title>
		<link>http://maxotek.net/blog/reflector-to-the-rescue-t306.html</link>
		<comments>http://maxotek.net/blog/reflector-to-the-rescue-t306.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 02:18:29 +0000</pubDate>
		<dc:creator>partho</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Decompiling]]></category>
		<category><![CDATA[Version Control]]></category>
		<category><![CDATA[Reflector]]></category>
		<category><![CDATA[Subversion]]></category>

		<guid isPermaLink="false">http://maxotek.net/blog/reflector-to-the-rescue-t306.html</guid>
		<description><![CDATA[I was trying to get a list of all un-versioned C# code files in my working copy. Some examples on the internet pointed to Windows Power Shell which is able to pipe the output of one command to another (kind of what we have in linux). The command was:- (svn stat) -match '^\?.*\.cs$' The following [...]]]></description>
			<content:encoded><![CDATA[<p>I was trying to get a list of all un-versioned C# code files in my working copy. Some examples on the internet pointed to Windows Power Shell which is able to pipe the output of one command to another (kind of what we have in linux).</p>
<p>The command was:-</p>
<pre><code>(svn stat) -match '^\?.*\.cs$'</code></pre>
<p>The following command gave a much cleaner output (just the full path of the files)</p>
<pre><code>(svn stat &quot;--no-ignore&quot;) -match '^\?.*\.cs$' -replace '^.\s+',''</code></pre>
<p>The next command deleted those files from the PC.</p>
<pre><code>(svn stat &quot;--no-ignore&quot;) -match '^\?.*\.cs$' -replace '^.\s+','' | rm</code></pre>
<p>I did not pay attention to what the command does and executed it. Net result was that my precious source codes were gone. I looked for the files in the recycle bin. But, being a command line program, it does not seem to use the recycle bin. Then I tried NTFS undelete which is able to restore files that were deleted ‘permanently’ too. What happens is that when you delete a file (SHIFT + DELETE, skipping the recycle bin), windows merely marks the space the file occupied in the disk as free. This is done for performance reasons (a delete operation would take time that is comparable to writing to a file, otherwise).</p>
<p>However, to my dismay, NTFS undelete was unable to find the file. Perhaps it was because of Windows 7 and it&#8217;s ways of handling different versions of a file.</p>
<p>It seemed like I would have to re-create the files again. But, then it occurred to me that reflector could come in handy. I had compiled the project previously. So, the debug directory had the compiled assemblies. I used reflector to get the source files back. Although not the exact as the original, the decompiled code was good enough for me to re-create the custom user-control.</p>
]]></content:encoded>
			<wfw:commentRss>http://maxotek.net/blog/reflector-to-the-rescue-t306.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Subversion Bug &#8211; Case Insensitive Username</title>
		<link>http://maxotek.net/blog/subversion-bug-case-insensitive-username-t150.html</link>
		<comments>http://maxotek.net/blog/subversion-bug-case-insensitive-username-t150.html#comments</comments>
		<pubDate>Thu, 17 Jun 2010 18:32:38 +0000</pubDate>
		<dc:creator>partho</dc:creator>
				<category><![CDATA[Version Control]]></category>

		<guid isPermaLink="false">http://maxotek.net/blog/?p=150</guid>
		<description><![CDATA[I spent a complete day trying to find the cause for an access denied error while committing changes to the Maxotek Repository. At first it seemed like a program was using one of the files. However, even restarting the system had no effect. Then, I tried to leave out the culprit file from the commit [...]]]></description>
			<content:encoded><![CDATA[<p>I spent a complete day trying to find the cause for an access denied error while committing changes to the Maxotek Repository. At first it seemed like a program was using one of the files. However, even restarting the system had no effect. Then, I tried to leave out the culprit file from the commit and wasa greeted by the <strong>&#8220;Access Denied&#8221;</strong> message again, only this time without a mention of any file as the cause.</p>
<p>I tried deleting the cached passwords from <strong>%AppData%\Subversion\Auth\svn.simple</strong>. The next time I got the dialog asking for the account information. I typed the username &#038; password in but still got the error.</p>
<p>While at work, I tried doing the commit and it worked. So, it seemed like an IP address ban. But, then again I don&#8217;t have a static IP address. Also, the Update, Revert, Check Out commands worked without a hitch.</p>
<p>Then it occurred that it could be a ban by domain name. I use No-IP to map my dynamic IP address to a domain. So, I changed the domain but the results were the same.</p>
<p>I finally tracked it down to being a case-sensitivity issue in the username. A Check Out, Revert, Update was being allowed from a username <strong>User</strong> but Commit was not. The actual username being <strong>user</strong>.</p>
]]></content:encoded>
			<wfw:commentRss>http://maxotek.net/blog/subversion-bug-case-insensitive-username-t150.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

