This seems like a really broad exclusion. I read it as "skip any changeset that has a deleted item outside of the directory I'm working in." I'm concerned that a change like this:

* **Edit** $/Project/FileICareAbout.cs
* **Delete** $/OtherProject/FileIDoNotCareAbout.cs

will get skipped.

Also, I'd really prefer that logic like `IsRenameChangeset` lives in `ChangeSieve` so that it can be covered more easily by [unit tests](https://github.com/pmiossec/git-tfs/blob/rename_branch/GitTfsTest/Core/ChangeSieveTests.cs).