Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

stg-branch(1) [debian man page]

STG-BRANCH(1)							   StGit Manual 						     STG-BRANCH(1)

NAME
stg-branch - Branch operations: switch, list, create, rename, delete, ... SYNOPSIS
stg branch stg branch <branch> stg branch --list stg branch --create <new-branch> [<committish>] stg branch --clone [<new-branch>] stg branch --rename <old-name> <new-name> stg branch --protect [<branch>] stg branch --unprotect [<branch>] stg branch --delete [--force] <branch> stg branch --description=<description> [<branch>] DESCRIPTION
Create, clone, switch between, rename, or delete development branches within a git repository. stg branch Display the name of the current branch. stg branch <branch> Switch to the given branch. OPTIONS
-l, --list List each branch in the current repository, followed by its branch description (if any). The current branch is prefixed with >. Branches that have been initialized for StGit (with linkstg:init[]) are prefixed with s. Protected branches are prefixed with p. -c, --create Create (and switch to) a new branch. The new branch is already initialized as an StGit patch stack, so you do not have to run linkstg:init[] manually. If you give a committish argument, the new branch is based there; otherwise, it is based at the current HEAD. StGit will try to detect the branch off of which the new branch is forked, as well as the remote repository from which that parent branch is taken (if any), so that running linkstg:pull[] will automatically pull new commits from the correct branch. It will warn if it cannot guess the parent branch (e.g. if you do not specify a branch name as committish). --clone Clone the current branch, under the name <new-branch> if specified, or using the current branch's name plus a timestamp. The description of the new branch is set to tell it is a clone of the current branch. The parent information of the new branch is copied from the current branch. -r, --rename Rename an existing branch. -p, --protect Prevent StGit from modifying a branch -- either the current one, or one named on the command line. -u, --unprotect Allow StGit to modify a branch -- either the current one, or one named on the command line. This undoes the effect of an earlier stg branch --protect command. --delete Delete the named branch. If there are any patches left in the branch, StGit will refuse to delete it unless you give the --force flag. A protected branch cannot be deleted; it must be unprotected first (see --unprotect above). If you delete the current branch, you are switched to the "master" branch, if it exists. -d DESCRIPTION, --description DESCRIPTION Set the branch description. --force Force a delete when the series is not empty. STGIT
Part of the StGit suite - see linkman:stg[1] StGit 03/13/2012 STG-BRANCH(1)

Check Out this Related Man Page

STG-REPAIR(1)							   StGit Manual 						     STG-REPAIR(1)

NAME
stg-repair - Fix StGit metadata if branch was modified with git commands SYNOPSIS
stg repair DESCRIPTION
If you modify an StGit stack (branch) with some git commands -- such as commit, pull, merge, and rebase -- you will leave the StGit metadata in an inconsistent state. In that situation, you have two options: 1. Use "stg undo" to undo the effect of the git commands. (If you know what you are doing and want more control, "git reset" or similar will work too.) 2. Use "stg repair". This will fix up the StGit metadata to accomodate the modifications to the branch. Specifically, it will do the following: o If you have made regular git commits on top of your stack of StGit patches, "stg repair" makes new StGit patches out of them, preserving their contents. o However, merge commits cannot become patches; if you have committed a merge on top of your stack, "repair" will simply mark all patches below the merge unapplied, since they are no longer reachable. If this is not what you want, use "stg undo" to get rid of the merge and run "stg repair" again. o The applied patches are supposed to be precisely those that are reachable from the branch head. If you have used e.g. "git reset" to move the head, some applied patches may no longer be reachable, and some unapplied patches may have become reachable. "stg repair" will correct the appliedness of such patches. "stg repair" will fix these inconsistencies reliably, so as long as you like what it does, you have no reason to avoid causing them in the first place. For example, you might find it convenient to make commits with a graphical tool and then have "stg repair" make proper patches of the commits. Note If using git commands on the stack was a mistake, running "stg repair" is not what you want. In that case, what you want is option (1) above. STGIT
Part of the StGit suite - see linkman:stg[1] StGit 03/13/2012 STG-REPAIR(1)
Man Page