General Questions
Please have a look at our release notes.
Tower runs on Intel-based Macs with OS X v10.5+.
No. Since Tower comes with a fully functional Git binary, you don't have to install anything else.
Yes, you can download Tower and use it for 30 days for free. The trial version includes all features and will always be the latest Tower version available. Once the trial expires, you will be asked to purchase a license.
Installation & Updates
As Tower comes with a fully functional Git binary, you don't have to install Git on your system to use Tower. If you also want to use Git on the command line, though, we recommend you use the OSX installer or MacPorts (if present on your system).
a) OSX Installer
You can download an installer package for Mac from here: http://code.google.com/p/git-osx-installer.
-or-
b) MacPorts
With MacPorts installed, you can run this in your command line:$ sudo port install git-core +svn +doc +bash_completion +gitwebIf you don't have MacPorts installed, yet, download and install it from here: http://www.macports.org
In some rare cases, the updater cannot properly quit the "old" Tower app as you hit the "Install and Relaunch" button of the updater. This will prevent the new Tower version from starting up, showing just the main menu, but no window.
In this case, you need to quit the old Tower process yourself by starting the OS X "Activity Monitor" application, search for "Tower" and quit all processes that show up selecting "Quit Process" from the toolbar. A reboot of your machine will also work.
After terminating the old process, Tower should start up normally again.You can get older versions of Tower on our Release Notes page.
Tower App
Tower currently doesn't support multiple windows for different repositories. However, this is already on our roadmap and will be supported in a future version.
Add a file named "Icon.png/jpg/gif" to the root folder of the repository to have it shown in the dashboard list.
The photos come from gravatar.com. If you (or the committers in your project) have an account at gravatar, Tower gets the image for this account (account identifier is the email address).
An important thing to note is that the email of your Gravatar account must be the same as the email that the committer / author of the corresponding commit has.
So, if you committed with your git config email address set to "example@example.com" and your gravatar account has the same email address, then you should definitely see your picture.Yes, hook scripts are respected by Tower. Please note: Do your hook scripts rely on the existence or on specific values of shell environment variables that are created/modified in your shell profile (like extending "PATH" by a non-standard-path (e.g. '~/bin') to run a script from there in the hook)?
If the answer is yes, then you need to make sure you're creating the required shell environment in the hook script itself (like modifying "PATH"), not in your shell profile, as the hook script is called from the Tower process environment which is not running in a shell environment (hence your shell profile is not loaded).- In Lion, you can disable autocorrection via the Mac OS system settings ("Language & Text" --> "Text" --> Uncheck "Correct Spelling Automatically").
- In Snow Leopard, please open "Spelling and Grammar" in the "Edit" main menu and disable "Check Spelling While Typing". Then restart Tower. Now the automatic spelling correction should be disabled.With git-svn, we don't have any chance to accept a certificate in Tower because git-svn doesn't provide any parameters for this. You will have clone the repository on the command line and accept the certificate permanently (by pressing "p") there. After cloning, you can add the repository just like any other existing repo to Tower and continue to work in Tower.
Which tools, services & plugins can I use with Tower?
All tools have been tested and set up by using official or common guidelines.
If something is not working as expected:
- See notes below for each tool
- Install latest version of the tool
Write your own tool script handler - see here for more info: Diff & Merge Tools.
BBEdit
- Does not support merging
- If you have installed BBEdit from the AppStore, the command line tools are not included by default. However, they are essential for use with Git and Tower. Please download the command line tools from the BareBones software website.
Kaleidoscope
- Supports merging (since V2)
- The "ksdiff" command line tool needs to be installed (see "Integration" in Kaleidoscope's application menu).
TextMate
- Does not support merging
- Simply acts as diff result viewer for the
/usr/bin/diffcommand line tool
TextWrangler
- Does not support merging
- If you have installed TextWrangler from the AppStore, the command line tools are not included by default. However, they are essential for use with Git and Tower. Please download the command line tools from the BareBones software website.
FileMerge
- Supports merging
- Only included with Xcode installation
P4Merge
- Supports merging
DiffMerge
- Supports merging
DeltaWalker
- Supports merging
Changes
- Does not support merging
Araxis Merge
- Supports merging
- Requires installation of the Araxis command line tools (from the Utilities folder of the Disk image to /usr/local/bin)
- GitHub
- Beanstalk
- Bitbucket
- Coda Plugin
- Command Line Tool
The Coda Plugin and the Command Line Tool are shipped with Tower. They can be installed via "Integration..." in the "Tower" main menu.
Using the custom URL handling is an interesting way to open Tower from your browser.
- Tower will react on its custom URL scheme "gittower://openRepo/" + a remote repository URL
e.g. "gittower://openRepo/git@example.beanstalkapp.com:/project.git" - You can configure Tower to also react on the "Clone in Mac" button on github.com
This requires that you have downloaded GitHub's own "GitHub for Mac" application and have logged in with your account (menu "GitHub"-->"Preferences"-->"Identity"). In Tower's preferences, you should then check the option "Open repositories on Github.com in Tower" in the "Hosting" tab.
- Tower will react on its custom URL scheme "gittower://openRepo/" + a remote repository URL
Connecting to Remote Repositories
Beanstalk Git repositories are used in Tower just like any other Git repository. You can add cloned Beanstalk Git repositories to Tower or clone new ones directly from Beanstalk. You just need to make sure you have set up an SSH key correctly as instructed on the Beanstalk Online Help. You can then verify that everything works on the command line by following this guide to use a Beanstalk git repository.
Another helpful resource to check is the Beanstalk Guides.
If you want to create a new repository on Beanstalk, you can do so right from within Tower: use the "Create Beanstalk Repository" button on Tower's Dashboard to conveniently create new repositories with your existing account.
GitHub repositories are used in Tower just like any other Git repository. You can add cloned GitHub repositories to Tower or clone new ones directly from GitHub.
If you intend to use the SSH protocol for your private GitHub repository, you need to set up an SSH key first as instructed on the Online Help. Please note that a GitHub URL of the form git@github.com:USER/REPOSITORY.git is an SSH URL and that you cannot use username and password authentication over SSH on GitHub.
If you prefer to authenticate with username and password, you can use the HTTPS URL of your GitHub repository.
If you want to create a new repository on GitHub, you can do so right from within Tower: use the "Create GitHub Repository" button on Tower's Dashboard to conveniently create new repositories with your existing account.
GitHub does not support SSH authentication with username and password. You need to set up an SSH key pair if you intend to connect via SSH. Please check the Online GitHub Help for further information.
If you prefer to authenticate with username and password, you can connect with the HTTPS URL of your GitHub repository.
Please note that the username in GitHub SSH URLs (
user@someserver.com:repo.gitis an SSH URL) is alwaysgitand you must not change it. GitHub identifies you by the SSH key you are authenticating with, not by the username.If you intend to use it with Beanstalk or GitHub, please have a look at the Beanstalk Guides or at the Online GitHub Help for further information on how to create an SSH key and use it with your preferred repository hosting service.
If you have successfully created the key and added it to your Beanstalk or GitHub account, it should automatically work in Tower. If it does not work in Tower, please make sure you can connect to Beanstalk or GitHub via command line as instructed on the Beanstalk and GitHub help page mentioned above. If you can connect via command line but not with Tower, please read the following FAQ section.
The information provided on the aforementioned support pages can basically be applied to all repository hosting services. But we recommend you check the support page of your hosting service if you need more specific instructions.
You need to set up your keys in the same way as you have to for Git on the command line.
The default DSA and RSA SSH key files (
~/.ssh/id_rsaor~/.ssh/id_rsa) should be handled automatically by OS X. If the key is password protected, Keychain will - by default - prompt you to unlock the key. This is a feature of the SSH utilities that ship with Mac OS X. If the Keychain window does not show up, you might have overwritten the system SSH utilities with another installation (e.g. from Macports) or have installed another SSH Agent.If the key is not the default DSA or RSA key file neither Tower nor Git on the CLI will by default be able to find the key for authentication. So this is a problem that is not directly related to Tower. In order to use them in Tower (or Git in Terminal) you need to manage your keys with an SSH agent (http://en.wikipedia.org/wiki/Ssh-agent).
But we are looking into a solution to make SSH Keys configurable per repository/remote in Tower, so that keys are automatically added to the SSH agent for you on demand.
Usually, you want to specify the port in the URL itself. If the URL is of the form
ssh://user@someserver.com/repo.gitthe port is specified after the hostname, separated by a colon. For example, to specify the alternate port2222, the URL would becomessh://user@someserver.com:2222/repo.git.Alternatively, you can create a SSH config file
~/.ssh/configwhere you can define default SSH parameters for certain hosts:Host somehost.com Port 2222Note that if an SSH URL is in SCP syntax (
user@someserver.com:repo.git), you cannot specify the port in the URL because this syntax does not support it. You must either rewrite the URL to the SSH syntax above or use the config file approach.- My repository is on a SAMBA share and the file modes keep changing when I checkout branches or files
Please note that this is not a problem with Tower, but generally with SAMBA shares and Mac OS X clients.
Using a Samba share with Mac OS X clients can be very troublesome as Mac OS X tends to change the file permissions to whatever umask is set on the shell or configured for (even individual) Mac OS X applications no matter what is configured in the SAMBA config for the
create mask,directory mask,force create modeandforce directory modesettings.However, this is only true if the SAMBA setting
unix extensionsis set toyes(which is the default). Mac OS X seems to utilize this setting to change the file mode after file creation operations.To solve the problem, you should change the
unix extensionssetting tono, which is probably the more reasonable value when using SAMBA shares with Mac OS X clients.If you cannot change this SAMBA setting for any reason, you need to make sure that your shell umask is set to the desired value (probably the one that the SAMBA share tries to enforce) as Tower makes calls to the Git command line utility and therefore responds to the shell umask setting rather than the umask setting for applications.
git-svn
When using Tower on OS X 10.8 with Subversion Repositories (git-svn), the following error can occur:
`Can't locate SVN/Core.pm in @INC (@INC contains: [...]`
Since version 10.8, Mac OS X does not include certain PERL Subversion libraries anymore which are required by the git-svn installation bundled with Tower.
The only solution at the moment is to download and install the latest Xcode command line tools from Apple which will install the missing PERL subversion libraries.- With git-svn, we don't have any chance to accept the certificate in Tower because git-svn doesn't provide any parameters for this. You will have to accept the certificate permanently (by pressing "p") when cloning via the command line.After having cloned the repo on the command line you can perfectly go on working with it in Tower - simply by adding it to Tower via "Add Existing Repo" like any other existing local repository.
Pricing & Licenses
Due to the restrictions and issues with the Mac App Store Tower is not available in the App Store. We will monitor future versions of the App Store.
Students receive a 50% discount on their Tower purchase. Please send us a copy of your student ID first and you will then receive a coupon code to process your oder.
Yes, educational institutions and their staff members as well as non profit organizations receive a 20% discount on Tower. Please contact us to receive a coupon code for your order.
All updates for the version you purchased are free until we publish the next major update. Major updates require an upgrade fee (e.g. 1.x to 2.x).
The Tower license agreement can be found here.
Since Tower version 1.4.5 you can deactivate Tower on a machine from within the app: Tower menu -> Registration -> Deactivate on this machine. In case you switch machines, please deactivate Tower first on the old machine and then install it on your new one.
Sure, we will be happy to extend your trial. Please contact us for more info.
Yes, you can add additional users to a multi user license anytime. Please contact us with the number of users you would like to add.
Press
Yes, please visit our press area for screenshots, logos, screencasts and our downloadable press kit.
I need Help
Please use our contact form to report a bug.
Absolutely. Please use our contact form to share your ideas with us.
Please enter the email address used to place your order here and we will resend your license key.
Please enter the details used to place your order here and we will get back to you.

