← Back to git-up/GitUp

How to Deploy & Use git-up/GitUp

GitUp Deployment & Usage Guide

1. Prerequisites

  • macOS: 10.10 (Yosemite) or later
  • Xcode: 12.0 or later (required for building from source)
  • Apple Developer Account: Optional but recommended for code signing; free Apple ID accounts work for local builds
  • Git: Required for cloning the repository with submodules

2. Installation

Option A: Pre-built Binary (Recommended)

Download the latest stable release from the GitHub Releases page.

  1. Download GitUp.zip from the latest v* tagged release (Stable channel)
  2. Extract and drag GitUp.app to your /Applications folder
  3. Launch from Applications or Spotlight

Option B: Homebrew (Community Maintained)

brew install gitup-app

Note: The Homebrew formula is not maintained by the GitUp developers.

Update Channels

GitUp supports two update channels configurable in Preferences > Updates:

  • Stable: Releases tagged with v (e.g., v1.2.3)
  • Continuous: Development builds tagged with b (e.g., b1234)

3. Configuration

For Development: Code Signing Setup

GitUp requires code signing configuration to build. Choose one approach:

Method 1: Disable Code Signing (Quick Local Build)

  1. Open GitUp.xcodeproj in Xcode
  2. Select the Application target → Build Settings
  3. Locate Code Signing Identity
  4. Delete the value (set to empty) for both Debug and Release

Method 2: Use Apple Developer Team (Recommended)

Create a configuration file to automatically sign with your team:

echo "DEVELOPMENT_TEAM = YOUR_TEAM_ID" > Xcode-Configurations/DEVELOPMENT_TEAM.xcconfig

Replace YOUR_TEAM_ID with your Apple Developer Team ID (found in Apple Developer Portal).

4. Build & Run

Clone the Repository

git clone --recursive https://github.com/git-up/GitUp.git
cd GitUp

Important: The --recursive flag is required to fetch libgit2 and other submodules.

Build in Xcode

  1. Open GitUp.xcodeproj in Xcode
  2. Configure code signing (see Section 3)
  3. Select the Application scheme and your target device (My Mac)
  4. Press Cmd+R to build and run

Build from Command Line

xcodebuild -project GitUp.xcodeproj -scheme Application build

5. Deployment

For End Users

GitUp uses Sparkle for automatic updates. Once installed, the app checks for updates based on your selected channel (Stable/Continuous).

For Developers: Creating Releases

To distribute your own builds:

  1. Archive: In Xcode, select Product → Archive
  2. Export: Export as "Copy of the app" or "Developer ID" signed application
  3. Distribute: Upload to GitHub Releases with appropriate tag:
    • Use v1.x.x tags for Stable channel releases
    • Use bxxxx tags for Continuous channel builds

GitUpKit Integration

If building apps that use GitUpKit (the underlying Git toolkit):

#import <GitUpKit/GitUpKit.h>

// Initialize repository
GCRepository *repo = [[GCRepository alloc] initWithPath:@"/path/to/repo"];

Link against the GitUpKit.framework built from the GitUpKit target.

6. Troubleshooting

Build Errors

"No signing certificate" or code signing errors

  • Follow Method 1 in Section 3 to disable code signing, or
  • Create the DEVELOPMENT_TEAM.xcconfig file with your Team ID

"libgit2 not found" or submodule errors

# Reinitialize submodules
git submodule update --init --recursive

"GitUpKit/GITypes.h not found"

  • Ensure you're building the Application scheme, not just individual files
  • Clean build folder: Cmd+Shift+K, then rebuild

Runtime Issues

App crashes on launch

  • Check Console.app for crash logs
  • Ensure you're running macOS 10.10+
  • Try deleting preferences: defaults delete co.gitup.mac

Repository won't open

  • Verify Git repository integrity: git fsck
  • Check repository path doesn't contain special characters or spaces (rare edge cases)

Update Issues

"Update failed" errors

  • Manually download latest release from GitHub
  • Check network proxy settings if behind corporate firewall

For additional support, consult the GitHub Issues or the project wiki.