# Install bit and set up your machine

Install the bit command line, check git and your commit identity, and sign in to Lorx.

Lorx is plain git hosting, so any git client works with it. `bit` is Lorx's own command line: it runs your CI on your machine, opens and merges change requests, and signs git in to Lorx for you.

## Install bit

On Linux or macOS:

```sh
curl -fsSL https://lorx.space/install.sh | sh
```

On Windows, in PowerShell:

```powershell
irm https://lorx.space/install.ps1 | iex
```

The installer puts `bit` in `~/.local/bin` (on Windows, `%LOCALAPPDATA%\Programs\bit`, added to your path) and checks it against the release's `SHA256SUMS`. It also looks for git, and if git is missing it prints the command that installs it on your system.

## Set up your machine

```sh
bit setup
```

`bit setup` shows what is there before it changes anything, and asks before each change:

1. **git**: bit needs git 2.28 or newer. If git is missing or older, setup says how to install it for your system and stops.
2. **Your name and email**: the `user.name` and `user.email` your commits carry. Once you are signed in, setup offers a verified email from your Lorx account, so your commits count on your profile.
3. **Defaults**: new repositories start on `main` (`init.defaultBranch`), and a new branch pushes without `--set-upstream` (`push.autoSetupRemote`).
4. **Sign in**: see below.

To see what's set without changing anything, run `bit setup --check`. It exits with status 1 when something needs doing. For scripts, `bit setup --yes` accepts every proposal, and `--name`, `--email` and `--default-branch` set values directly.

## Sign in

```sh
bit auth login
```

This opens your browser to approve the device. Once you approve it, bit keeps the credential in your system's keychain and registers itself as git's credential helper for Lorx. From then on `git push` and `git clone` over HTTPS need no password.

- To sign in with a personal access token instead, pipe it in: `bit auth login --with-token < token.txt`.
- `bit auth status` shows who you are signed in as, and `bit auth logout` signs you out.

bit keeps credentials only in the system keychain (Keychain on macOS, Credential Manager on Windows, the Secret Service on Linux). On a machine with none, such as a container or a CI box, use a token directly with git and the API: see [Connect over HTTPS or SSH](/docs/get-started/connect).

## Keep bit up to date

```sh
bit upgrade
```

bit checks for a new version at most once a day and tells you after a command when one is out. `bit upgrade --check` only says whether there is one, and `BIT_NO_UPDATE_CHECK=1` turns the check off.
