Skip to content

Commit

Permalink
Move code to clean up after a branch change to branch.c
Browse files Browse the repository at this point in the history
Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
  • Loading branch information
Daniel Barkalow authored and Junio C Hamano committed Feb 10, 2008
1 parent 94a5728 commit c369e7b
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 6 deletions.
8 changes: 8 additions & 0 deletions branch.c
Original file line number Diff line number Diff line change
Expand Up @@ -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 changes: 18 additions & 2 deletions branch.h
Original file line number Diff line number Diff line change
@@ -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 changes: 2 additions & 4 deletions builtin-reset.c
Original file line number Diff line number Diff line change
Expand Up @@ -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>...]";
Expand Down Expand Up @@ -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);

Expand Down

0 comments on commit c369e7b

Please sign in to comment.