
Fork: Fast and Friendly Git Client for Mac - adamnemecek
https://git-fork.com
======
SysArchitect
I can't even test the functionality because it won't let me pass the first
screen because I don't have config user.email set in my gitconfig.

[http://imgur.com/a/T4s4o](http://imgur.com/a/T4s4o)

I have a pre-commit hook that is installed on all new repo's I create/clone
that warns me, and then I set an email address PER REPO. This way I can work
on both $WORK and open source projects on the same machine while having
different email addresses per repository.

The assumption that a user needs to have user.email set globally breaks my
entire work-flow.

~~~
DanPristupov
Hi. Didn't even think about such a requirement. In next version I'll make
credentials optional (with a warning though).

~~~
cm3
People shouldn't use git without having configured that. It would prevent
incorrect commits landing in public repositories. Actually git defaults to
some made-up local git author if it's not set, and that's less useful and
sometimes invalid, provoking git-fsck errors.

~~~
spicyj
Git explicitly shows a "Committer" line when typing the commit message if it
chooses a default, so I also find not setting one globally and getting this
reminder to be more useful:

    
    
      # Please enter the commit message for your changes. Lines starting
      # with '#' will be ignored, and an empty message aborts the commit.
      #
      # Committer: Ben Alpert <balpert@balpert-mbp.local>
      #
      # On branch master
      # Your branch is up-to-date with 'origin/master'.
      #

------
AsyncAwait
I love [https://www.git-tower.com](https://www.git-tower.com) but it isn't
free. However, you can try before you buy.

------
vbv
I have been using atlassian sourcetree for quite a while. It has very similar
look and feel :)

[https://www.atlassian.com/software/sourcetree](https://www.atlassian.com/software/sourcetree)

~~~
dougmccune
Yeah, I had to do a double take because it's almost screen for screen the UI
of sourcetree.

~~~
rhinoceraptor
All of the Mac Git clients pretty much look the same, though.

~~~
dougmccune
I sort of wondered about that thinking maybe there's only one logical way to
design a git GUI on osx, but then even within this thread people brought up a
few other examples that look totally different:

[http://gitup.co/](http://gitup.co/)

[http://gitboxapp.com/](http://gitboxapp.com/)

But I do agree there are lots of very similar UIs for various git GUIs. And
I'm sure SourceTree borrowed lots of their layout from others as well.

~~~
BerislavLopac
[https://www.gitkraken.com/](https://www.gitkraken.com/) is also different.

~~~
kls
I switched from SourceTree to GitKraken, I don't know all the internal issues
of what transpired at Atlasian on the SourceTree team, but to me it's just not
the same product that the old Mac app was when they where independent.

I really like GitKraken and the team is taking feedback applying it
constructively and putting out an impressive product. The part I really like
is it's the same app on OSX, Linux and Windows using Electron to build it was
a smart move on their part. My favorite feature has to be dropping a branch on
another branch to create a pull request. I don't fanboy stuff much these days
but I am a pretty big fan of their's right now.

------
mullsork
This looks sweet! I use git quite lightly right now as I'm currently the only
developer on my project. Gitup.co is the benchmark of Git apps for me right
now. I barely need anything more than it and it's so incredibly light feeling.
Like the app goes out of the way so that I can do what I need, such as
reviewing lines to be staged.

It hasn't been receiving many updates unfortunately. I'm happy that another
app has popped up! Looking forward to try it out.

~~~
nicky0
Another gitup user here. What kind of updates were you hoping for? Seems
pretty solid to me.

~~~
mullsork
Looking at the website I see there's quite a few features I didn't know about!
Maybe there's not really any update I would need after all.

------
bdcravens
I'm a Tower user, not really seeing a compelling differentiator here (tabs
look interesting however), but perhaps someone is seeing something I'm not.

~~~
pointnova
tabs are coming to Tower very soon. They are already part of the 2.5 beta :)

------
jackmoore
What will this will cost once it's out of beta? Do you have any plan to open
source the codebase?

------
RubenSandwich
I suggest not using the magnifying glass icon for the repo favorites. It is
confusing especially because you have a search field already on the right hand
side. Might I suggest a star icon or a list icon for the list of repos?

~~~
DanPristupov
I use the magnifying glass icon for the "Open quickly" window.

It's supposed to be something like Spotlight search in OS X
([https://dl.dropboxusercontent.com/s/vopjz0e9tp1k1ul/2016-08-...](https://dl.dropboxusercontent.com/s/vopjz0e9tp1k1ul/2016-08-29%20at%2022.30.png)).

~~~
josho
The idiom is magnifying glass representing search.

The star icon more closely aligns with quick access to something used often.

------
allenbrunson
i have been using GitBox ([http://gitboxapp.com](http://gitboxapp.com)) for
quite awhile now, but it seems like it doesn't get much in the way of updates,
so i tried this.

Very first thing it does is write a file called "gitclient.log" to my home
directory. i deleted it, and it came back the next time i started the app. I
see nothing in the prefs that allows you to move the file somewhere else.

call me picky, but this is is a deal-breaker for me. _nothing_ gets to write
files to the root of my home directory. Right into the trash.

~~~
DanPristupov
The developer is here. I've already mentioned, I wasn't ready to be on HN
today (I'm not the OP), and that's why I missed logging. Anyway, I'm really
sorry for that.

Right now I'm making a new build with the fix. Thanks for letting know.

~~~
allenbrunson
Good on you for fixing it. I'll have another look after you put up a new
build.

~~~
DanPristupov
It's fixed now. I released new build. It's available on the website. All the
users will receive the update automatically tomorrow. Thank you

------
wkd
I use tig ([https://github.com/jonas/tig](https://github.com/jonas/tig))
because it doesn't require me to leave the terminal and I find it does
everything I need from a git UI without getting in the way

------
devy
Yet another Git GUI front end :-)

The homebrew version of the Git is bundled with two Git GUI frontends called
gitk (invoked with `gitk`) and git-ui (invoked with `git gui`)

~~~
daigoba66
It's not just homebrew, they're part of most standard git distributions (fully
cross platform!)

~~~
devy
I suspected but I was sure if that's the case or not.

------
macandcheese
What's an argument for switching from Sourcetree? I recently tried Git's own
Mac client and was running back to Sourcetree within a few minutes...

~~~
blakeyrat
Do you really need one? Sourcetree is awful. Slow. Bloated. It even fails to
dim non-available UI elements all over the place. Doesn't know how to use
checkbox widgets correctly.

I love the 5-6 seconds of waiting for its UI to gradually, slooowly, update
itself after you do virtually any operation, no matter how simple.

~~~
macandcheese
I guess I haven't had any UI issues with it as far as asset popping, although
going through their "big update" and the related auth problems left it pretty
much unusable for a full week.

------
Myrmornis
I normally use the command line for everything but I do use a graphical git UI
(magit). It's so much better for staging and rebasing/fixups.

------
kzisme
The only thing that jumps out at me is the visual of the git tree diagram on
the left - other than that why not just use the command line?

Am I missing something?

~~~
DanPristupov
When you use a git GUI some console actions can be made easier:

\- I can stage/unstage/reset my changes line-by-line

\- I can observe the whole repository structure as it was at the moment of
commit

\- Gui client automatically keeps my submodules in the valid state so I don't
need to check their state after each checkout

\- I can quickly review the whole repo history (sometimes it can be useful
when I am involved in a new project)

\- I can see clearly the commits which are going to be pushed

~~~
belovedeagle
All of these things are readily available from the native interface. Hmmm...
Maybe a GUI man page browser could replace hundreds of these projects...

------
duaneb
If it doesn't include interactive rebase, it's not worth the cash because I'll
have to go back to the CLI before I merge anything.

EDIT: Fork looks wonderful, I didn't mean to be so cold—just pointing out that
it's hard to write a replacement for the original tool, and that I value it
when it happens. I believe Sourcetree supports it.

~~~
bdcravens
> it's not worth the cash

Well, it is free :-) (at least while in beta)

~~~
awill
Will it be paid after the beta? It's important to be upfront about these
things.

~~~
DanPristupov
I'm planning to keep the main version free. However, having a premium version
with some _extra_ features is also possible.

------
donatj
I can't live without line by line commits. It's the only reason I use a GUI
over the command line to begin with.

~~~
tedmiston

        git add -p

------
kylecordes
I wish someone would maintain a list of all current (and past, abandoned) Git
UIs, including a feature grid. This would both help the community using them,
and help people who think "oh, I'll write a Git UI!".

~~~
adamnemecek
All of the ones I'm aware of are either cross platform (i.e. the user
experience on single platforms is less than ideal) or closed source.

------
ikonst
The web page lacks any screenshots of the change staging screens.

~~~
biehl
Yes. I looked for that too. Those are the screens that bring by far the most
value for me in gui clients... (instead of "git add -p")

~~~
DanPristupov
Thanks guys. I'll add them soon.

------
qwertyuiop924
Neat. But please check if a name is taken, so we don't have to tell people
that we used Fork to checkout a copy of the Linux source tree, and fix a bug
in Fork.

------
toddmorey
For anyone looking for a Mac graphical git client, I should mention GitBox
here ([http://gitboxapp.com](http://gitboxapp.com)) as I've used it for years
to augment the command line. Not all the GUI clients for git are useful, but I
really like GitBox. Right mix of features.

------
BJanecke
This is awesome, and might actually finally replace GITX for me.

Needs a CLI to open repos with.

For now I'm using echo /Applications/Fork.app/Contents/MacOS/Fork >
/usr/local/bin/fork && CHMOD +x /usr/local/bin/fork

which is not super ideal

*edit - typo

~~~
mcrider
Same boat. Everything beyond GitX has too much clutter.. This is basically
Gitx with tabs which is all I ever wanted :)

------
eiopa
Reminds me of gitx (a good thing!) :)

Is there a way to only view commits that belong in the current branch (like
git log)? The commits from the other branches are distracting when you're
trying to read the history of a particular branch.

~~~
DanPristupov
Not yet. This is a very popular request. I'm going to implement that next
week.

------
tomaspollak
For an open source alternative, remember there's also the forked version of
GitX:

[https://rowanj.github.io/gitx/](https://rowanj.github.io/gitx/)

~~~
dguaraglia
This. I can't really tell how much time of doing "git commit -p" GitX has
saved me. It's a much easier way to visualize, stage and group changes into
commits when you've made a bunch of unrelated changes.

------
idlemind
I'm surprised no one has mentioned GitKraken yet (gitkraken.com). Cross-
platform and beautiful. Edit: oh and free!

~~~
iLoch
And super slow and lacking basic GUI functionality like multiple file
selection and individual line staging.

~~~
kls
It has had both for several releases now.

------
chrisp_dc
Shout out to SmartGit. Syntevo has being making version control that don't
suck for over a decade. Tried and true.

------
enricosada
i'd like to add Git Extensions (
[https://gitextensions.github.io/](https://gitextensions.github.io/) ) to the
list. Open source, free, and with lots of features and plugin

------
tom4000
Git itself is Free And Open Source; so I just use Free And Open Sourced
clients for.

------
greggman
Do any of these clients support side by side diff? Why is that such a rare
feature?

~~~
DanPristupov
I also miss side-by-side diff and hope to implement it when I finish high
priority features.

------
iconara
I don't get it, it doesn't do anything but crash. Whatever I do.

~~~
DanPristupov
The Fork developer is here. I received few crash reports today, fixing them
right now.

P.S. I wasn't ready to be mentioned on HN today :).

------
knes
Love the GitX-style tree view!

------
memming
How much faster is it than competitors?

~~~
ikonst
Yeah, not sure what "fast" refers to.

