Browse Source

Move code to clean up after a branch change to branch.c

Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
maint
Daniel Barkalow 17 years ago committed by Junio C Hamano
parent
commit
c369e7b805
  1. 8
      branch.c
  2. 20
      branch.h
  3. 6
      builtin-reset.c

8
branch.c

@ -138,3 +138,11 @@ void create_branch(const char *head, @@ -138,3 +138,11 @@ void create_branch(const char *head,
if (real_ref)
free(real_ref);
}

void remove_branch_state(void)
{
unlink(git_path("MERGE_HEAD"));
unlink(git_path("rr-cache/MERGE_RR"));
unlink(git_path("MERGE_MSG"));
unlink(git_path("SQUASH_MSG"));
}

20
branch.h

@ -1,8 +1,24 @@ @@ -1,8 +1,24 @@
#ifndef BRANCH_H
#define BRANCH_H

void create_branch(const char *head,
const char *name, const char *start_name,
/* Functions for acting on the information about branches. */

/*
* Creates a new branch, where head is the branch currently checked
* out, name is the new branch name, start_name is the name of the
* existing branch that the new branch should start from, force
* enables overwriting an existing (non-head) branch, reflog creates a
* reflog for the branch, and track causes the new branch to be
* configured to merge the remote branch that start_name is a tracking
* branch for (if any).
*/
void create_branch(const char *head, const char *name, const char *start_name,
int force, int reflog, int track);

/*
* Remove information about the state of working on the current
* branch. (E.g., MERGE_HEAD)
*/
void remove_branch_state(void);

#endif

6
builtin-reset.c

@ -16,6 +16,7 @@ @@ -16,6 +16,7 @@
#include "diff.h"
#include "diffcore.h"
#include "tree.h"
#include "branch.h"

static const char builtin_reset_usage[] =
"git-reset [--mixed | --soft | --hard] [-q] [<commit-ish>] [ [--] <paths>...]";
@ -270,10 +271,7 @@ int cmd_reset(int argc, const char **argv, const char *prefix) @@ -270,10 +271,7 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
break;
}

unlink(git_path("MERGE_HEAD"));
unlink(git_path("rr-cache/MERGE_RR"));
unlink(git_path("MERGE_MSG"));
unlink(git_path("SQUASH_MSG"));
remove_branch_state();

free(reflog_action);


Loading…
Cancel
Save