id = "tower" name = "Tower" homepage = "https://www.git-tower.com" description = "The most powerful Git client for Mac and Windows, used by over 100,000 developers and designers." # SimpleIcons' Tower is git-tower.com's mark. icon = "SimpleIcons:tower" # `gittower` is the command-line tool Tower installs; the Homebrew cask `tower` # links it out of the bundle ("$APPDIR/Tower.app/Contents/MacOS/gittower"). executables = ["gittower"] # Tower has a Windows build too, but only the macOS locations below were # verified, so the entry claims macOS alone rather than guessing. platforms = ["macos"] [dotfiles] # One entry for what the application list spells as three: `tower`, `tower-2` # and `tower-3` are the same Git client's successive major versions, and the # number is part of the identifier rather than of the product name — today's # Tower 17 still writes com.fournova.Tower3. The Homebrew cask's `zap trash:` # already treats them as one family, globbing the version out: # ~/Library/Application Support/com.fournova.Tower* # ~/Library/Preferences/com.fournova.Tower*.plist # ~/Library/Caches/com.fournova.Tower* # ~/Library/Saved Application State/com.fournova.Tower*.savedState # so the same glob is used here and covers whichever generation is installed. paths = [ "[appData]/com.fournova.Tower*/", "[preferences]/com.fournova.Tower*.plist", ] # The cask's cache and crash-reporter directories # (~/Library/Caches/com.fournova.Tower*, ~/Library/HTTPStorages/…, # ~/Library/Caches/com.plausiblelabs.crashreporter.data/…) are all outside the # two paths above, so there is nothing to carve out of what is listed. # Not marked secret, but worth knowing what is in there: the support directory # is Tower's own — the repository bookmarks and their absolute paths, the # services (GitHub, GitLab, Bitbucket) the user connected, the custom # workflows. Tower's hosting-service accounts and SSH key passphrases go to the # macOS Keychain rather than to a file under the home directory, which is the # subject of its own "Using and Managing SSH Keys" guide. No file among the # paths above is a credential end to end. secret = [] # No machine_lines: the preferences are a binary property list and the support # directory's bookmark store is a database, neither of which prefix nor # key_path matching can read. The machine-local part of it is the list of # repository paths on this Mac; a consumer that can read those formats should # drop them itself.