git-force-clone(1)

git-force-clone1

Overwrite local repositories with clone

Usage

force-clone --help

force-clone remote_url destination_path

force-clone --branch branch_name remote_url destination_path

Overview

Provides the basic functionality of git clone, but if the destination git repository already exists it will force-reset it to resemble a clone of the remote.

Because it doesn't actually delete the directory, it is usually significantly faster than the alternative of deleting the directory and cloning the repository from scratch.

CAUTION: If the repository exists, this will destroy all local work: changed files will be reset, local branches and other remotes will be removed.

Process

If target-directory doesn't exist or isn't a git repository then the arguments will simply be passed through to git clone.

If target-directory exists and is a git repository then this will:

•

Remove all remotes

•

Set the origin remote to {remote_url} and fetch the remote

•

Discover the default branch, if no branch was specified

•

Check out the selected branch

•

Delete all other local branches

Options

{remote_url} - The URL for a git remote repository of which to make a clone. {destination_path} - A path to the local git repository location to clone into. --branch {branch_name} - After cloning, checkout this branch.

Examples

git-force-clone -b master [email protected]:me/repo.git ./repo_dir

Releases

4 releases since Debian 10 (Buster); the text changed 3 times.

  1. 10
  2. 11
  3. 12
  4. 13

Author

Written by Robin Winslow [email protected].

Reporting bugs

https://github.com/tj/git-extras/issues

From git-extras 7.3.0-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.