Hacker News new | past | comments | ask | show | jobs | submit login
Tower 2 (git-tower.com)
163 points by alexbilbie on July 22, 2014 | hide | past | favorite | 71 comments



Great customer service too. When Tower was first released at the end of 2010, I asked for a feature (multiple windows) but they said it wasn't part of their plan for the UI. Anyway, this morning I got an email from them to specifically tell me that the feature I asked for was in version 2. They'd bothered to go back through 3 and a half years of support tickets to find customers who would benefit from the new release, I was hugely impressed.


I'm assuming you're not involved in the tracking of tasks and releases in your job ? Because linking support ticket / customer to a task, and a set of tasks to a release, is a very common and regular feature of task tracking.

I'm not saying it's not awesome that they contacted you and others like that, it's the rare kind of great marketing that benefits both sides, but I certainly do hope that a company working in their field would know to use proper dev tools and not "go back though 3 and a half years of support tickets to find customers".

(I have no idea why there aren't more companies doing it)


Because it is hard and costly to have a system that does that effectively, and harder and more costly to actually maintain integrity in that system over time.

It IS impressive to be doing this, at least once you're past the stage of having a few guys doing customer support.

Building an integration between a CRM and a backlog/bug tracker has some complexity. Maintaining that over several years and proactively contacting requesters back is impressive. At least in my world. :)


> Because it is hard and costly to have a system that does that effectively, and harder and more costly to actually maintain integrity in that system over time.

I don't think this is really true. I implemented it with Redmine for ~12 customer support people in a day or so. Been ticking along for five years without a complaint.


I'm more impressed with the social aspect than the software.

Trackers exist and are great, but people tend to ignore bugs/requests and either let them rot without cleanup or do sweeps that kill old information.


I've not worked in a company that sells an end-product, I've only worked building websites themselves. Like you say, i'm sure their issue tracker does most of the legwork for them, but it's still a big deal that they actually do this.


I use Tower daily, and used the Tower 2 beta for a bit. I have to say I think they are missing an opportunity. There are a few cool new features (like autofetch) but for the most part, the upgrade smacks of change-for-change-sakes not actual progress towards a good workflow. More clicks are required, keyboard-only navigation is tough, diffs are hidden by default.

One thing most of these guys do is simply smack a UI on top of a command line, rather than explore ways to manipulate the available data into a better workflow than you could possibly get via commands. the conflict wizard is a good step, but that is only part of the story. Repo's are full of data ready to be mined in ways that aren't just 'git pull' and 'git merge'. There is a visual file history, changes made per-person, etc.


This is one of the things I really like about SourceTree, that I can do pretty much everything from the keyboard. Several times a day, I type

- Ctrl-shift-+ (add file to index)

- Ctrl-shift-c (commit)

- (type the description of the commit)

- Alt-enter (validate)

- Ctrl-shift-p (push)

No mouse necessary.

The SourceTree people know how a developer works.


To be fair, you can do this in Tower (1) with the same steps:

- Cmd + Alt + A (to index)

- Cmd + Alt + C (add commit message or amend)

- Alt + Enter (validate)

- Cmd + Alt + Shift + P (push)

But, as I said before in comments, base UX abilities now broken in Tower 2.


They've missed keyboard navigation completely. To be fair, there are shortcuts for many things, but it is still practically impossible to navigate the UI with the keyboard only.

For example, ⌘1 takes you to the working copy, but it only selects the "Working Copy" menu item to the left, it doesn't focus the working copy pane. The first thing I tried was to navigate the unstaged files with the arrow keys, but that just moved me back to the History view since that list was somehow focused in the background. To focus the file list, I had to press tab about 20 times to pass all the controls in the tab order on the way there.


On a related note, here are the keyboard shortcuts for Tower: http://git-tower.com/help/mac/faq-and-tips/keyboard-shortcut...


That video was extremely well done.

http://www.youtube.com/watch?v=cyyuqf1m-2E

For a moment, it made me want to ditch Windows and migrate to Mac just to use this client.

Personal favorite, being able to see up stream commits without actually applying them on your local branch.

I currently use SmartGIT on Windows and I am sort-of-happy with it. I wonder why no one is trying to create a killer Git client on Windows.


> I wonder why no one is trying to create a killer Git client on Windows.

I'd bet the majority of Windows developers use Microsoft technologies, preferring TFS over Git. While there are less Mac users, they're all your target market.


I wonder why no one is trying to create a killer Git client on Windows.

Because there is already one: SourceTree (which is also available for OS X).


I am aware of SourceTree. However, I personally don't find it a killer client. I prefer SmartGit over SourceTree. Don't get me wrong, the app is functional but it doesn't have the features I want in a client. E.g. one of the most important feature for me is the Folder View for my repository where I can quickly look up any file and see history for it.


You get this (or something like it) in the OS X version of SourceTree: a tree view of your working copy, plus the Reveal Log... context menu option. So if you were going to switch to OS X anyway, purely over the git client situation, once you've spent £1,500 on your shiny new Mac you will at least not have to spend any more on the git client.

(I don't know why the Windows incarnation lacks a tree view. A Win32 treeview would be perfectly functional, and they're easy to code for. (Never having seen the SourceTree code, I can of course confidently say that this would apply here.) But if you don't mind a flat list, Reveal Log... is present and correct. So you'd be good to go already.)


Can't find any information for a planned Linux release =(


What's wrong with Git Extensions?


I've found SmartGIT has been maturing nicely, the only thing I'd really like is for a bit more status in the repositories list.


> I wonder why no one is trying to create a killer Git client on Windows.

There is SourceTree, which is already quite feature-rich and stable.


2cheesy4me. In fact, if Git for Windows would add visual merging tool it would be just as good, if not better.


It may not be killer, but tortoiseGit has been good enough for my windows needs...


try sourcetree from atlassian


SourceTree can be considered as a killer client, I think.


I bought Tower before I found out about Sourcetree, and while I enjoyed using it, I found that Soucetree was way more feature rich. Can anyone give me a reason why I should fork over even more dough for an app that I'm not even sure I'd end up using?


FWIW when I was researching Git GUIs for some CLI-averse team members, I came to the same conclusion. Sourcetree is the best and most feature-complete GUI out there for Git (Tower was one of the others I looked at).

Plus it is free.


Why don't you try it first? You can download a 30-day trial for free. If you like it and want to keep using it after that, you can pay.


> why I should fork over even more dough for an app that I'm not even sure I'd end up using?

You shouldn't. You can try the demo though.


Because there's a trial. And there's more to an app's value than its feature set. I don't know anything about Sourcetree, but I probably only use a small minority of git's feature set and will always go with the app with the superior UI/UX.


Thanks, I didn't realize this. I'll give it another whirl.


I've been messing around with this for about 20 minutes. I was a huge Tower 1 fan until I found SourceTree, which, back then, handled submodules way better.

I hate when people post things to HN and then the dour crowd posts a bunch of negative crap about it, but I honestly haven't found anything in my scant 20 minutes with it that is giving me the urge to want to fork the $30 to upgrade. I don't really need to drag and drop stuff to branch and push. I understand english pretty well, so I get what "Resolve using mine" means. Otherwise, they kind of look pretty similar to each other, except that it's a bit easier to see what's going on with SourceTree.

I don't know, I raved about Tower before I gave SourceTree a good go. SourceTree's UI has made giant leaps since then and I don't see anything in Tower that's easier to do than SourceTree. Also, the UI feels a little too "large" to me somehow, it's not comfortable at all.


In case you are wondering: Yes there's way to upgrade your 1.x licence (€25 + tax), just navigate through the buy process and it'll give you an option to select that. I was searching for that on the landing page but couldn't find anything.


Can I squash commits and interactive rebase generally? These are pretty important to having a clean commit history, ie:

  'Add foo'
rather than:

  'Add foo' 
  'Small tweak to foo'
  'Fix forgetting to enable foo'


Interactive rebase is not yet supported. But is already on the roadmap and will come in 2.x.


Errors on purchase page are not encouraging:

Notice: Undefined index: body style="background-color: white; color: black; font-size: 10pt; font-family: 'lucida grande', verdana, arial, helvetica, sans-serif;"> in /kunden/281288_70176/apps/website_tower/releases/9b6ba7f1-20142207090452/www/lib/pricing.php on line 192


I apologize for the downtime. Our store is now back up: http://www.git-tower.com/buy


Agreed. I've used Tower since one of the earliest releases and was ready to pull out my credit card before even reading what the new features were.

Meh.


these sorts of things happen. not fair to judge them on that. judge them on the product, not the website


Visual conflict management and visual "git add -p" does look really nice.

(Here's a good SO q/a on `git add -p`: http://stackoverflow.com/questions/1085162/commit-only-part-...)


I'm disappointed. Now we have nice UI plus huge UX downgrade:

- unchangeable font in sidebar;

- quick navigation via Cmd + [1,2,3] doesn't resign focus to the file/change list, so you need to click to continue use your hot keys (I hate app that make me clicking unnecessarily!);

- all main keyboard hotkeys changed (Cmd + Alt + [Shift] + P - for pushing [pulling] and etc). But why do you ask? Because they said;

- 'Cmd + Ctrl + Backspace' doesn't discard local changes for the selected files, marks them as deleted instead (nice try);

- submodules autofetching enabled by default and said 'Nice to meet you!' to our project with git-subtree based modules.

As a result, I can not use this app, because my hands still remember and I hate when I'm forced to click without the need!

A good chance for SourceTree.


It looks like custom diff tools are currently broken. I've got a plist/shell script for Beyond Compare 4 that worked fine in Tower 1.x but clicking diff tool doesn't seem to do anything in 2.x. Hopefully they'll fix this soon.


A third-party git GUI that defaults to exposing the staging area by default and provides nicely granular tool for commit composition? I am impressed.

Only sad thing is i can't usefully try it out, being on Windows.


It's a nice update, but I wish I could use the search bar to search for files in the tree. This would be really useful when I have an issue in a file and wanted to do a blame for that file. Having to go navigate through the UI file tree to do this is very painful, and it's very simple on the command line. It would be even nicer if find file feature in the seach bar this was a fuzzy finder, it could use the silver searcher to do this even.


A nice feature of the previous version of Tower (and even more previously, most SVN clients), is the ability to browse the entire repo and instantly see info about the last commit of each file (e.g., date, author).

That seems to be missing in this version. There is a Tree view of the repo for each commit, but it is cumbersome to both browse files AND see when files were (last) changed. Has anyone seen such a feature in Tower 2 or other GUIs?


It's annoying that it takes a bit of digging to find out the actual price.

(Yes, I realize it's only several clicks, but frankly I feel a lot better about handing over my money to a company that clearly displays their pricing)


Is there an option to automatically merge --non-ff a feature branch into development? "Finish feature" seems to use just merge


In the standard "Merge" dialog (see toolbar button), the option "Always generate merge commit" will make sure the merge is --no-ff.


but this option doesn't work for the "finish feature" part of git-flow


Would there be any use for this tool if you already know your way around the git command line?


Three things I've noticed as a manager of several developers who use or don't use GUI's for git: Pre-commit self code review tends much better with a GUI or at least a good git-aware diff program, leading to higher code quality. Visualization of branches, merges, etc. is much easier with a GUI. Complex merges with conflicts, partial commits, etc. tend to be easier with a GUI like tower.


Being able to do basic things on the command line is definitely nice. And the question is not command line VERSUS a GUI. Tower, e.g. can be used side-by-side with the command line.

However, Tower help you both become more productive and make fewer mistakes. No one likes to inspect a complex project history on the command line. Getting a visual representation of a conflict helps you resolve it more confidently. Automatically having local changes stashed away prevents problems... There are indeed many scenarios where a GUI is plain helpful - for beginners and pros alike.


>Getting a visual representation of a conflict helps you resolve it more confidently.

You can launch e.g. kdiff3 when necessary to resolve conflicts visually without using a GUI git clint.


I learned git form the command line and it's still my go-to, but sometimes it's nice to have a higher level view of where you are in the repo, both the current commit and tree generally. Especially if I'm working through a big commit or merge, it's nice to see where I am in conflict resolution, etc.


I don't see $60 of value over a few customized git aliases. The 'easy visualizations' in a GUI can be just as easily teased out with .gitconfig snippets:

> lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative


Oh, or try staging parts of a file on the command line... http://git-tower.com/help/mac/working-copy/stage-changes


git add -p, although its main problem is that you can only select chunks, not separate lines. Actually I see that Tower has that same issue. IIRC Github for Mac allows you to select individual lines, even in the same chunk.


> git add -p, although its main problem is that you can only select chunks, not separate lines.

Typing "e" will let you edit the chunk. Then you can get as fine grained as you like.

Personally, I use Emacs and commit-patch [1].

[1] http://porkrind.org/commit-patch


you can select individual lines in Tower, as well.


I know my way around the git command line, but it is a timesaver for me when I do merges and partial commits.


Sure. I like SourceTree's git-flow support when I've worked on projects that used it. Most of the time I use Gitbox, which is super simple and fast and nicely integrates with Kaleidoscope.


Diffs are easier to manage


How does it compare to SourceTree, which is free?


First, let me say that Sourcetree is an excellent application, too. However, most people that chose Tower over Sourcetree prefer our approach in regard to user interface, workflows, usability, etc. A visual conflict wizard, a new service account manager, automatic stashing... Tower goes a long way to make using Git both as easy and as comfortable as possible.


You can see my comment elsewhere, but I've been messing around with Tower 2 some more, and I'm actually finding it pretty confusing. It seems submodule support is still flawed. For example:

https://www.evernote.com/shard/s218/sh/755a2a30-db64-4378-bc...

I'm not sure why it's showing the submodule folders as something I need to commit.

I prefer the combined view that SourceTree has of changed files with your branch history. In Tower 2, they seem to be separated.

I do like the breadcrumb trail for going into submodules though. SourceTree opens it as a separate window, which I find annoying.


Mostly a matter of preference. Several tower users on our team and a SourceTree user. Try both, take cost into consideration, and go with what works for you.


Try SourceTree, save yourself $59.00.


Here I thought it was addictive game like 2048 ...


Must be tough selling something GitHub gives away for free...


I don't think so. I use Windows and I paid 79$ for SmartGit.

http://www.syntevo.com/smartgithg/purchase

Git is great but when I am using it 50 times a day, I want to use a UI which lets me focus on my work and as they say, let me avoid the sharp edges. I would be more than happy to pay 59$ for Tower 2. Alas, it's not available on Windows.


I'm in a similar boat in that I just switched back to Windows from Mac last week. The Mac Git UI client that helped me avoid the sharp edges was Gitbox (http://www.gitboxapp.com/) which is only $15. Tower looks like a pretty nice client though.

I'm currently using SourceTree (I find it a little better than Github's Windows app), but I feel like I'm constantly clicking on way too many buttons in the UI in comparison to Gitbox. Muscle memory, I guess.


GitHub doesnt have a product remotely close to this.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: