I've tried it. You can't really port magit from Emacs, its workflow depends entirely on how Emacs works (and this is a good thing, mind you). Neogit just feels awkward to use IMO from a vim perspective.
That said, I'm happy with Fugitive. It does the job in a way I'd expect from a vim plugin.
That's not quite true for original Vim. The developer experience for writing plugins is incomparable; VimL lacks good ways of abstracting and composing behavior, while Emacs Lisp gives you just about everything a modern language should, including sophisticated object system with multimethods and multiple inheritance. The built-in debugger for Elisp is not on the level of JetBrains IDEs, but it provides all the typical functionalities and is GUI-driven, in contrast to Python's pdb or Ruby pry.
NeoVim is an entirely different beast, and I heard good things about its way of handling plugin development.
That said, I'm happy with Fugitive. It does the job in a way I'd expect from a vim plugin.