git-svn has these commands: create/pull: clone (init + fetch) init fetch rebase commit: dcommit set-tree (lower-level form of dcommit) commit-diff (pushes diff of git revs to svn, does not require init) history: blame find-rev info log svn features: create-ignore propget proplist show-externals show-ignore internals: migrate (upgrade from one version of git-svn to another) The commands that are implemented are: init fetch clone (init+fetch) shelve The commands I plan to implement, in approximate order of priority: checkin (dcommit?) - to rewrite commits, or not to rewrite them. unshelve These commands are in git-svn, but I'm not convinced git-tfs needs them. rebase find-rev log commit-diff ? migrate ? Known bugs: None right now. Other potential enhancements: * Use noodle for dependencies. * Query history in chunks, either in a background thread or just with 100 changeset chunks, in order to speed up the initial output from a fetch. * Support for TFS branches. * Make tags for changesets off by default. * More interesting workspace mappings, e.g. "$/Project1 -> Source; $/Project2/Libs -> Libs".