提交 d596118d 编写于 作者: J Jonathan Nieder 提交者: Junio C Hamano

revert: stop creating and removing sequencer-old directory

Now that "git reset" no longer implicitly removes .git/sequencer that
the operator may or may not have wanted to keep, the logic to write a
backup copy of .git/sequencer and remove it when stale is not needed
any more.  Simplify the sequencer API and repository layout by
dropping it.
Signed-off-by: NJonathan Nieder <jrnieder@gmail.com>
Signed-off-by: NJunio C Hamano <gitster@pobox.com>
上级 a7eff1e0
...@@ -944,7 +944,7 @@ static int sequencer_rollback(struct replay_opts *opts) ...@@ -944,7 +944,7 @@ static int sequencer_rollback(struct replay_opts *opts)
} }
if (reset_for_rollback(sha1)) if (reset_for_rollback(sha1))
goto fail; goto fail;
remove_sequencer_state(1); remove_sequencer_state();
strbuf_release(&buf); strbuf_release(&buf);
return 0; return 0;
fail: fail:
...@@ -1026,7 +1026,7 @@ static int pick_commits(struct commit_list *todo_list, struct replay_opts *opts) ...@@ -1026,7 +1026,7 @@ static int pick_commits(struct commit_list *todo_list, struct replay_opts *opts)
* Sequence of picks finished successfully; cleanup by * Sequence of picks finished successfully; cleanup by
* removing the .git/sequencer directory * removing the .git/sequencer directory
*/ */
remove_sequencer_state(1); remove_sequencer_state();
return 0; return 0;
} }
...@@ -1084,7 +1084,7 @@ static int pick_revisions(struct replay_opts *opts) ...@@ -1084,7 +1084,7 @@ static int pick_revisions(struct replay_opts *opts)
* one that is being continued * one that is being continued
*/ */
if (opts->subcommand == REPLAY_REMOVE_STATE) { if (opts->subcommand == REPLAY_REMOVE_STATE) {
remove_sequencer_state(1); remove_sequencer_state();
return 0; return 0;
} }
if (opts->subcommand == REPLAY_ROLLBACK) if (opts->subcommand == REPLAY_ROLLBACK)
......
...@@ -3,17 +3,11 @@ ...@@ -3,17 +3,11 @@
#include "strbuf.h" #include "strbuf.h"
#include "dir.h" #include "dir.h"
void remove_sequencer_state(int aggressive) void remove_sequencer_state(void)
{ {
struct strbuf seq_dir = STRBUF_INIT; struct strbuf seq_dir = STRBUF_INIT;
struct strbuf seq_old_dir = STRBUF_INIT;
strbuf_addf(&seq_dir, "%s", git_path(SEQ_DIR)); strbuf_addf(&seq_dir, "%s", git_path(SEQ_DIR));
strbuf_addf(&seq_old_dir, "%s", git_path(SEQ_OLD_DIR)); remove_dir_recursively(&seq_dir, 0);
remove_dir_recursively(&seq_old_dir, 0);
rename(git_path(SEQ_DIR), git_path(SEQ_OLD_DIR));
if (aggressive)
remove_dir_recursively(&seq_old_dir, 0);
strbuf_release(&seq_dir); strbuf_release(&seq_dir);
strbuf_release(&seq_old_dir);
} }
...@@ -2,19 +2,11 @@ ...@@ -2,19 +2,11 @@
#define SEQUENCER_H #define SEQUENCER_H
#define SEQ_DIR "sequencer" #define SEQ_DIR "sequencer"
#define SEQ_OLD_DIR "sequencer-old"
#define SEQ_HEAD_FILE "sequencer/head" #define SEQ_HEAD_FILE "sequencer/head"
#define SEQ_TODO_FILE "sequencer/todo" #define SEQ_TODO_FILE "sequencer/todo"
#define SEQ_OPTS_FILE "sequencer/opts" #define SEQ_OPTS_FILE "sequencer/opts"
/* /* Removes SEQ_DIR. */
* Removes SEQ_OLD_DIR and renames SEQ_DIR to SEQ_OLD_DIR, ignoring extern void remove_sequencer_state(void);
* any errors. Intended to be used by 'git reset'.
*
* With the aggressive flag, it additionally removes SEQ_OLD_DIR,
* ignoring any errors. Inteded to be used by the sequencer's
* '--quit' subcommand.
*/
void remove_sequencer_state(int aggressive);
#endif #endif
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册